mysql_fetch_array():参数 1 应该是资源
在 PHP 脚本中,您遇到错误“mysql_fetch_array() 需要参数” 1 成为资源。”这表明该函数接收到的参数类型不正确。
错误源
问题源于以下行:
<code class="php">$result = mysql_query("SELECT * FROM student WHERE IDNO=".$_GET['id']);</code>
该行对数据库执行查询。如果查询失败或没有结果,该函数返回一个布尔值,指示查询成功或失败。但是,mysql_fetch_array() 函数需要一个资源作为其第一个参数,这是成功查询的结果。
解决方案
要解决此问题,您应该检查 mysql_query() 的返回值以确保它是一个资源。您可以通过在查询行后添加错误检查来完成此操作:
<code class="php">$result = mysql_query("SELECT * FROM student WHERE IDNO=".$_GET['id']); if (!$result) { die('Invalid query: ' . mysql_error()); }</code>
如果查询失败,这将显示错误消息并终止脚本。
其他注意事项
除此问题外,建议使用改进的 MySQLi 或 PDO 扩展进行数据库交互,而不是已弃用的 mysql_* 函数。这些扩展提供了增强的安全性和性能功能。
以上是为什么我的 PHP 脚本抛出“mysql_fetch_array(): 参数 1 应该是资源”?的详细内容。更多信息请关注PHP中文网其他相关文章!