2017-07-10 32 views
0

我在用我的php代碼獲取一些數據庫信息時遇到了一些麻煩。 我得到的是這條消息:「連接成功0結果」。 這裏是我的代碼人,感謝提前的幫助。我無法從數據庫中獲得任何數據輸出,我只會得到「0結果」作爲else語句,情況如何?

<?php 
    $servername = "example"; 
    $username = "example1"; 
    $password = "example2"; 
    $row = array(); 

    $conn = new mysqli($servername,$username,$password); 

    if ($conn->connect_error) { 
     die("Connection failed: " . $conn->connect_error); 
    } 
    echo "Connected successfully"; 
    $sql = "Select Distinct subject from mobile_math_science_toc"; 
    $result = mysqli_query($conn, $sql); 
    if ($result = $conn->query($sql)) { 
     // output data of each row 
     while($row = mysqli_fetch_assoc($result)) { 
      echo "Subject " ,$row["subject"]; 
     } 
    } else { 
     echo "0 results "; 
    } 

    mysqli_close($conn); 
    ?> 
+3

忘記選擇數據庫! – Saty

+0

未選擇數據庫 –

+2

^他們說什麼。我也很好奇你爲什麼要查詢兩次?一旦使用程序風格,然後你又在排隊中再次進行,寫出第一個結果? –

回答

0

變化

$conn = new mysqli($servername,$username,$password); 

$conn = new mysqli($servername,$username,$password, "<your database name>"); 

而且

$result = mysqli_query($conn, $sql); 
     if ($result = $conn->query($sql)) { 
} 

$result = $conn->query($sql); 
     if ($result) { 
} 
-1

嘗試

if (mysqli_num_rows($result) > 0) { 

在檢查你有數據或不

2

你應該在創建到數據庫的連接添加DBNAME。您可以使用mysqli_num_rows函數來計數no。的行。

<?php 
    $servername = "example"; 
    $username = "example1"; 
    $password = "example2"; 
    $dbname = "your_db_name"; // Specify your db-name here. 

    $conn = new mysqli($servername,$username,$password,$dbname); 

    if ($conn->connect_error) { 
     die("Connection failed: " . $conn->connect_error); 
    } 
    echo "Connected successfully"; 

    $sql = "Select Distinct subject from mobile_math_science_toc"; 
    $result = mysqli_query($conn, $sql); 
    // Checking if there are some records available. 
    if (mysqli_num_rows($result) > 0) { 
     // output data of each row 
     while($row = mysqli_fetch_assoc($result)) { 
      echo "Subject " ,$row["subject"]; 
     } 
    } else { 
     echo "0 results "; 
    } 

    mysqli_close($conn); 
?> 
+0

答**好的答案**將始終解釋已完成的工作以及爲什麼這樣做, 不僅適用於OP,而且適用於SO的未來訪問者,可能會發現此問題並正在閱讀您的答案。 – RiggsFolly

+0

@RiggsFolly:好的。感謝您的建議。之前我在代碼中添加了註釋。現在我在代碼之前添加了簡要說明。希望現在看起來不錯。 –

+0

@MohammadHallak:它解決了嗎? –

相關問題