2016-09-27 74 views
0

我另一個MySQL問題(如果你正在關注我的最後一篇文章,我決定放棄輸入並專注於現在的選擇)。從MySQL選擇數據到PHP頁面

我一直在關注如何在我的php頁面上顯示來自我的數據庫的數據的YouTube教程。以下代碼完全是他給我的。

但是我確定問題在於連接到數據庫的某個地方,因爲如果刪除除連接代碼以外的所有內容,我仍然會遇到同樣的問題。

當我加載頁面時,它只是空白。

在Youtube上,當他加載頁面時,他得到了他的結果。

我把我的用戶名,密碼和數據庫名稱翻了100遍,他們都是正確的。

任何人都可以看到下面的代碼的任何問題?

<!DOCTYPE html> 
<html> 
<head> 
</head> 
<body> 

<?php 

$servername = "localhost"; 
$username = "cbdadmin"; 
$password = "XXXX"; 
$dbName = "cbd_players"; 

//create connection 

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

// check connection 

if (conn -> connect_error) { 
    die ("connection failed: " . $conn -> connect_error); 
} 

$sql = "SELECT * FROM 'results'"; 

$result = $conn ->query($sql); 

if ($result-> unm_rows > 0) { 
    echo "<table> <tr><th>Home Team</tr></th> <tr><th>Home Score</tr></th> <tr><th>Away Score</tr></th> <tr><th>Awa Team</tr></th> <tr><th>Venue</tr></th>"; 
    while($row = $result -> fetch_assoc()){ 
     echo "<tr><td>" . $row["hometeam"] . "</td> <td>" . $row["homescore"] . "</td> <td>" . $row["awayteam"] . "</td> <td>" . $row["awayscore"] . "</td> <td>" . $row["venue"] . "</td></tr>"; 
    } 

    echo "</table>"; 

} 

else { 
    echo "No game have yet been played."; 
} 

$conn->close(); 


?> 

<p>Test</p> 
</body> 
</html> 
+1

您正在使用該表的錯誤標識預選賽http://dev.mysql.com/doc/refman/5.7 /en/identifier-qualifiers.html –

+0

即使我刪除$ conn = new mysqli($ servername,$ username,$ password,$ dbName)下的所有內容,它仍然不起作用。 – Chris

+0

現在你去了,徹底改變了原來的問題。你能定義「不起作用」嗎?你如何使用這個文件,作爲'http:// localhost /'(或你的託管網站的URL),還是'file:///'?什麼是文件的擴展名,'.php'或'.html'?否則,我看不到您的代碼失敗。然而,在這裏你確實有一個語法錯誤:if(conn - >'錯誤報告會拋出一個'undefined constant conn'的通知,除此之外,看不到它會失敗。 'conn - >'。 –

回答

3

您的代碼包含幾個語法錯誤。

你的這部分代碼:

if (conn -> connect_error) { 
    die ("connection failed: " . $conn -> connect_error); 
} 

$sql = "SELECT * FROM 'results'"; 

$result = $conn ->query($sql); 

if ($result-> unm_rows > 0) { 

,我會解釋。

你的表'周圍的單引號要麼需要被移除或使用反引號,因爲它們是不正確的標識預選賽:

然後你if (conn ->與失蹤$conn的前面會使用錯誤報告拋出undefined constant conn通知。

unm_rows是應該已經閱讀作爲num_rows一個錯字。

檢查的查詢還錯誤:

+1

超級間隔' - >'運營商也是一個壞習慣。 – tadman

+0

@tadman好點。 –