2016-09-27 83 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好点。 –