我是MySQL和PHP新手,对这段代码有问题。请告诉我哪里出错了:
代码如下:
<?php
include('connection.php');
$num1 = '1';
$num2 = '2';
// Get all the data from the table
$sql = mysql_query("SELECT * FROM table1 WHERE num1 = '$num1' AND num2 = '$num2'");
$row = mysql_fetch_assoc($sql) or die("No rows returned by query");
while ($row = mysql_fetch_assoc($sql)) {
echo $row["num1"];
echo '</br>';
echo $row["num2"];
echo '</br>';
}
?>
如果我改变
$sql = mysql_query("SELECT * FROM table1 WHERE num1 = '$num1' AND num2 = '$num2'");
到
$sql = mysql_query("SELECT * FROM table1 WHERE num1 > '$num1' AND num2 > '$num2'");
它起作用了。它不能与等号一起使用,尽管有些记录应该打印出来。
谢谢你抽出时间。
最佳答案
你的问题是你要取两次结果,
因此,删除while循环外部的fetch语句**($row=mysql_fetch_assoc($sql)或die(“查询未返回行”);)**,它应该可以工作。
如果可以,请更新。
关于php - PHP MySQL选择语句错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10546394/