-1
<?php 
$username = 'Gianna';
$con = mysqli_connect("$db_host","$db_username","$db_pass","$db_name");
if (!$con){die('Could not connect: ' .mysql_error());}
$result = mysqli_query($con,"SELECT * FROM $s_table WHERE stName='$username'");
    while ($row = mysqli_fetch_array($result)){
        $data1 = "instructor=";
        $data2 = $data1."'".$row['insName']."'".",";
        $trimmed = rtrim($data2, ",");}
mysqli_close($con);
?>

我已经在许多其他脚本中成功运行了它,但由于某种原因它不断返回PHP Warning: mysqli_fetch_array() expects parameter 1 to be mysqli_result, boolean given on line 56第 56 行是while循环。

4

3 回答 3

1

只是当查询错误时会出现此警告,因此请通过添加来检查您的查询die()

查看

$result = mysqli_query($con,"SELECT * FROM $s_table WHERE stName='$username'") or die("some problem in query");

你也可以使用mysqli_error()

于 2013-09-08T06:05:25.550 回答
1

您的查询可能失败,因此 mysqli_query 将 $result 设置为 FALSE(布尔值)。这为您提供了 mysqli_fetch 中的类型不匹配。

于 2013-09-08T06:02:06.147 回答
-1

更改 $result = mysqli_query($con,"SELECT * FROM $s_table WHERE stName='$username'");

to $result = mysqli_query("SELECT * FROM $s_table WHERE stName='$username'",$con);

看到差异了吗?

此外, $s_table 可能没有按照您的预期正确格式化。尝试使用 string.variable.string 样式连接它

于 2013-09-08T06:45:33.303 回答