2013-04-22 51 views
2

Users包含数据但仍显示Records Not Found的mysql_query不返回数据

<?php 

$conn = mysql_connect("localhost", "root", "pass", "Assign1"); 
$records = mysql_query($conn, "select * from Users"); 

if(!$records) 
{ 
    echo "No Records Found"; 
    exit(); 
} 

while($row = mysql_fetch_array($records)) 
{ 
    echo $row['name'] . " " . $row['pwd']; 
    echo "<br />"; 
} 

mysql_close($conn); 

?> 
+3

您正在使用[**的**过时的数据库API(HTTP:/ /stackoverflow.com/q/12859942/19068),并应使用[现代替换](http://php.net/manual/en/mysqlinfo.api.choosing.php)。 – Quentin 2013-04-22 10:34:52

+0

检查记录计数是这样的:if(mysql_num_rows($ records)== 0) – itsols 2013-04-22 10:35:06

回答

0

首先我们来解决这个问题。 它实际上显示的错误是没有选择的你必须选择需要的代码

mysql_select_db(“为Assign1”,$康恩)数据库数据库;

希望此代码将完全唯一您的问题。尝试了一次.........

<?php 
$conn = mysql_connect("localhost", "root", "pass"); 
mysql_select_db("Assign1",$conn); 
$result = mysql_query("select * from users", $conn); 
if(!$result) 
{ 
    echo "No Records Found"; 
    exit(); 
} 
while($row = mysql_fetch_array($result)) 
{ 
    echo $row[0]['name']; 
    echo "<br />"; 
} 
mysql_close($conn); 
?> 
11

你有逆转的参数mysql_query。它应该是:

$records = mysql_query("select * from Users", $conn); 

您的其他问题与if声明。您在查询上检查if,而不是在结果集上。

此外,我相信你可能知道,但mysql图书馆已被弃用,正在被删除。您应该真的学会使用mysqli函数,因为它们将在未来对您更有用。

Link to MySQLi documentation - 它确实比mysql图书馆更难。在正确的库

重新实现:

<?php 

$mysqli = new mysqli("localhost", "user", "pass", "database"); 
$query = $mysqli->query("SELECT * FROM users"); 
$results = $query->fetch_assoc(); 

if($results) { 
    foreach($results as $row) { 
     echo $row['name'] . " " . $row['pwd'] . "<br/>"; 
    } 
} else { 
    echo "No results found."; 
} 

?> 

希望我不只是为你做你的整个任务,但它可能会是值得的,让使用mysqli的正常多了一个人。

+0

仍然不能正常工作......... – vish 2013-04-22 10:35:35

+0

@ user2306964 - 编辑了足够的信息以使用正确的库工作。 – 2013-04-22 10:38:33

+0

@ user2306964什么不工作?也许你应该尝试回应一个错误。例如,在连接和查询语句的末尾加入'或die(mysql_error());'这样的语句:'mysql_query(...)或die(mysql_error());'至少你知道这个语句跑。 – itsols 2013-04-22 10:41:35

1

你有mysql_query功能

使用它的这样一个错误的用法:

<?php 
$conn = mysql_connect("localhost", "root", "pass","Assign1"); 
$result = mysql_query("select * from Users", $conn); 
if(!$records) 
{ 
echo "No Records Found"; 
exit(); 
} 
while($row = mysql_fetch_array($result)) 
{ 
    echo $row['name'] . " " . $row['pwd']; 
    echo "<br />"; 
} 
mysql_close($conn); 
?> 
+0

然后什么是正确的方法? – itsols 2013-04-22 10:36:39

+0

修改..我已经添加了解决方案 – Alex 2013-04-22 10:37:23

0

在这里你去

<?php 

$conn = mysql_connect("localhost", "root", "pass", "Assign1"); 
mysql_select_db(' ----your-database-here---', $conn) ; 
$records = mysql_query($conn, "select * from Users"); 

if(mysql_num_rows($records) > 0) 
{ 
while($row = mysql_fetch_array($records)) 
{ 
echo $row['name'] . " " . $row['pwd']; 
echo "<br />"; 
} 


}else 
{ 
echo "No Records Found"; 
exit(); 
} 



mysql_close($conn); 

?>