修改
为什么只回显第一行而不是所有满足WHERE条件的行?
$sql="SELECT from_name, to_name FROM private_messages WHERE from_id='$var' OR to_id='$var'" ;
$sql2 = mysql_query($sql);
$row = mysql_fetch_array($sql2);
echo $row['from_name'];
echo $row['to_name'];
答案 0 :(得分:1)
使用“while fetch”循环。
以下是使用 mysqli 界面的模式示例。
(注意:不推荐使用PHP mysql 接口。新开发应该使用PDO或mysqli。)
if ($sth = mysqli_query($con, $sql) {
//echo "#debug: query returned a result set";
while ($row = mysqli_fetch_assoc($sth)) {
//echo "#debug: fetched next row";
echo $row['from_name'];
}
//echo "#debug: exited while loop, last row already fetched";
} else {
//echo "#debug: query execution returned FALSE, handle error";
}
这与不推荐使用的mysql接口使用的模式相同。 (你有什么理由使用那个界面吗?N.B。不混合mysqli_和mysql_函数。