首页 > 后端开发 > php教程 > 为什么 MySQL Fetch 函数返回'期望参数 1 为资源”?

为什么 MySQL Fetch 函数返回'期望参数 1 为资源”?

Mary-Kate Olsen
发布: 2024-12-23 03:02:35
原创
110 人浏览过

Why Do MySQL Fetch Functions Return

理解“mysql_fetch_...”预期资源错误

使用 MySQL 函数时,例如 mysql_fetch_array()、mysql_fetch_assoc()、mysql_fetch_row ()和mysql_num_rows,你可能会遇到错误: “mysql_fetch_array()/mysql_fetch_assoc()/mysql_fetch_row()/mysql_num_rows 等...期望参数 1 为资源。”

该错误表明函数的第一个参数不是有效的数据库资源。数据库资源通常是通过成功调用 mysql_query() 获得的。如果 mysql_query() 执行查询失败,则返回 false。

解决问题

要解决此错误,您需要确保查询成功执行在将结果资源传递给获取函数之前。这涉及检查 mysql_query() 的返回值并相应地处理错误条件。

mysql_extension

<?php
$username = mysql_real_escape_string($_POST['username']);
$password = $_POST['password'];

$result = mysql_query("SELECT * FROM Users WHERE UserName LIKE '$username'");

if($result === FALSE) {
    trigger_error(mysql_error(), E_USER_ERROR);
}

while($row = mysql_fetch_array($result))
{
    echo $row['FirstName'];
}
?>
登录后复制

在此示例中,mysql_real_escape_string() 准备查询的用户名字符串,以防止 SQL 注入。我们检查 mysql_query() 的返回值,如果查询失败则触发用户错误。如果查询成功,我们就可以安全地在 mysql_fetch_array() 函数中使用结果资源了。

以上是为什么 MySQL Fetch 函数返回'期望参数 1 为资源”?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板