Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/231.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP错误“;未定义变量:mysql“U fetch”U assoc;_Php_Html_Mysql_Database - Fatal编程技术网

PHP错误“;未定义变量:mysql“U fetch”U assoc;

PHP错误“;未定义变量:mysql“U fetch”U assoc;,php,html,mysql,database,Php,Html,Mysql,Database,当我尝试运行此代码时,我收到了上述错误,我也尝试了多种解决方案,使用fetch_数组: $conn = mysql_connect('localhost', '-----', '-----','-----') or die('Error connecting to mysql'); $sql = "SELECT * FROM Subject"; $result = mysql_query($sql); $row=null; echo "<table>"; while( $row =

当我尝试运行此代码时,我收到了上述错误,我也尝试了多种解决方案,使用fetch_数组:
$conn = mysql_connect('localhost', '-----', '-----','-----') 
or die('Error connecting to mysql');
$sql = "SELECT * FROM Subject";
$result = mysql_query($sql);
$row=null;
echo "<table>";
while( $row = $mysql_fetch_assoc[$result]){

echo "<tr><td>";
echo $data['SubjectNo'];
echo "</td><td>";
echo $data['SubjectName'];
echo"</td></tr>";
} 
echo "</table";
echo"urnan";

?>
$conn=mysql\u connect('localhost','----','----','----','----'))
或者死(“连接mysql时出错”);
$sql=“从主题中选择*”;
$result=mysql\u查询($sql);
$row=null;
回声“;
而($row=$mysql\u fetch\u assoc[$result]){
回声“;
echo$data['SubjectNo'];
回声“;
echo$data['SubjectName'];
回声“;
} 
回声“
错误很明显未定义变量表示您使用的变量
未在代码中的任何位置定义

您的代码中存在什么问题?


您正在使用
$mysql\u fetch\u assoc
作为代码中未定义的变量


更重要的是,
$mysql\u fetch\u assoc
它并不等于我的另一位同事在评论中提到的
mysql\u fetch\u assoc

修改代码:

应将其用作:

while( $row = mysql_fetch_assoc($result)){
  // your stuff
}
代码中的第二个问题是这些括号应该是()

旁注:

我建议您使用
mysqli*
PDO
而不是
mysql*
扩展,因为它已被弃用,并且在PHP7中不可用。

参考PHP手册:


行中有一个错误

while( $row = $mysql_fetch_assoc[$result]){
mysql\u fetch\u assoc
是一个PHP函数,不是一个变量。因此无需在它前面加上
$
符号

所以应该是这样的

while( $row = mysql_fetch_assoc($result)){

$mysql\u-fetch\u-assoc
!=
mysql\u-fetch\u-assoc
。(代码>$
会有所不同)-但无论如何,您不应该使用mysql扩展…..现在是2016年,不是2006年,美元符号可能重复是我的错误,我现在收到错误“mysql\u-fetch\u-assoc()希望参数1是资源,(第19行)中给出的布尔值“@Jw13:现在,如果您的问题已解决,则选择最佳答案,并通过单击左侧绿色勾号将其标记为已接受。问题尚未解决,因为我现在有一个类似的问题,您知道响应“mysql_fetch_assoc()期望参数1为资源”的解决方案吗,布尔值在(第19行)中给出“@Jw13:这是另一个问题和新的问题朋友。$result=mysql\u query($sql);如果(!$result){echo mysql_error();}检查此@Jw13以查找错误。