我是一个非常新手的PHP,试图写一个脚本,连接到一个MySQL数据库,并简单地显示在每个标题下的列表格式的内容;
我的表包含ID (AutoIncrement)、FName、SName和EAddress字段。
数据库名为iphonehe_MGFSales,用户名为iphonehe_MGFSale -我已将具有完全权限的用户添加到数据库。
我正在尝试使用mysql函数与下面的代码建立到数据库的连接;
mysql_connect ("localhost", "iphonehe_MGFSale", "xxxxxxx") or die ('I cannot connect to the database because: ' . mysql_error());
mysql_select_db ("iphonehe_MGFSales");
我创建的表名为MGFSales DB。我正在使用这段代码尝试构建查询;
$query = mysql_query("SELECT * FROM MGFSales_DB");
最后,我尝试使用以下代码显示结果;
while ($row = mysql_fetch_array ($query)) {
echo "<br /> ID: " .$row['ID']. "<br /> First Name: ".$row['FName']. "<br /> Last Name: ".$row['LName']. "<br /> Email: ".$row['EAddress']. "<br />";
}
我已将文件命名为index.php并上载到我的服务器,运行时收到以下错误: mysql_fetch_array():在第16行的/home/iphonehe/public_html/pauldmorris.co.uk/mgf/index.php中,提供的参数不是有效的MySQL结果资源。‘
有人给我指了个方向吗?从我所能看到的情况来看,代码的第16行似乎相当紧凑,我是不是忽略了什么?谢谢
发布于 2018-05-11 02:34:40
错误仅出现在mysql_fetch_array
行中,纠正此错误应该是故障排除的第一步。
将mysql_fetch_array
更改为
mysqli_fetch_array
因为mysql或php中的最新更新不接受mysql,而只接受mysqli。另外,在代码中将everywhere mysql更改为mysqli。
发布于 2011-07-26 20:19:17
检查mysql_select_db
上的返回代码。
发布于 2011-07-26 20:26:51
您不应该直接应用mysql_fetch_array。
您应该首先检查数据。
if(mysql_num_row($query)>0){
your code
}
else{
echo 'it brings no data....';
}
它检查是否没有数据,然后它将执行否则块,否则您将顺利执行…
https://stackoverflow.com/questions/6829833
复制相似问题