Php mysql_fetch_assoc()函数有问题
我正在尝试运行sql查询,然后在表中显示结果。这是我正在使用的代码Php mysql_fetch_assoc()函数有问题,php,mysql,Php,Mysql,我正在尝试运行sql查询,然后在表中显示结果。这是我正在使用的代码 $sql = "SELECT * FROM mt.o_details WHERE cusid = '$cusid[$j]' AND type ='$type'"; $result = mysql_query($sql); while($row = mysql_fetch_assoc($result)) { ......... } 我经常犯的错误是 警告:mysq
$sql = "SELECT * FROM mt.o_details WHERE cusid = '$cusid[$j]' AND type ='$type'";
$result = mysql_query($sql);
while($row = mysql_fetch_assoc($result))
{
.........
}
我经常犯的错误是
警告:mysql_fetch_assoc()希望参数1是资源,
布尔值在
我回显了$sql命令,然后将其作为sql查询手动运行,该查询返回所需的行,因此是成功的。因此,当我运行脚本时,我不知道为什么会收到警告,而行数组是空的。如果您的查询没有返回任何结果或错误,则可能会出现此错误 mysql\u查询失败。请使用mysql\u error()查找错误
$result = mysql_query($sql) or die(mysql_error());
请使用以下代码避免错误:
$sql = "SELECT * FROM mt.o_details WHERE cusid = '$cusid[$j]' AND type ='$type'";
$result = mysql_query($sql);
if(mysql_num_rows($result) > 0){
while($row = mysql_fetch_assoc($result))
{
.........
}
}
使用mysql\u num\u rows
获取查询是否返回某些结果
注意:不要使用mysql,因为它已被弃用。使用PDO或mysqli.*
您的查询没有执行,它返回一个错误代码>在执行之前。问题可能会变得很明显,变量为空或列名不正确。@Hanky웃Panky请再次阅读问题,当我在mysql命令提示符中手动键入查询时,我已经检查了查询是否正在运行。echo上的$sql变量是
SELECT*FROM mt.o_details,其中cusid='6'和type='Shirt'
,运行此查询时,我得到了预期的行,因此我想我们可以得出结论,查询部分是OK的。如果是这样,则在执行该查询之前,您没有到数据库的连接。除此之外,没有其他可能的原因导致出现上述错误,请尝试使用this$result=mysql\u query($sql)或die(“查询中的错误:$query.”.mysql\u Error())代码>