我遇到了一些错误
警告:mysql_fetch_assoc():提供的参数不是有效的MySQL结果资源 事实上,由于没有全局变量,我将所有查询都放在函数中。
我的查询没问题,在其他地方的字段名称中没有错误。
麻烦的是,在当地一切都很好,当我把它放在网上,它没有工作,并在任何地方它给我一些错误
对于家庭我有这个错误:
Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in /web/teamfrancestron/www/lib_php/strongman.php on line 75
Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in /web/teamfrancestron/www/lib_php/strongman.php on line 90
我的用户拥有数据库中的所有权限,
这是我使用的代码: 这是第一个错误
function fetchAccueil() {
$sql = "SELECT
`content`, `date_maj`, `id_maj`, `titre`
FROM `stg_man_home`
WHERE
`id` = '1'";
$result = mysql_query($sql);
return mysql_fetch_assoc($result);
}
还有其他查询
/ ** * Fonction qui va chercher l'identitéd'unepersonne。 * @param类型$ id * @return类型 * /
function fetchIdentity($id) {
$input_id = mysql_real_escape_string($id);
$query = "SELECT
`nom`, `prenom`
FROM `stg_man_users`
WHERE `id` = '{$input_id}'";
$result = mysql_query($query);
return mysql_fetch_assoc($result);
}
我真的没有看到名字文件中的任何错误,我确信我的查询是有效的资源。 (适用于本地但不适用于服务器)。我在PHP 5.4
在其他页面上,我仍有同样的错误
非常感谢任何帮助。
答案 0 :(得分:0)
检查mysql_query
的返回值。它可以是结果集,也可以是值false
。将您的查询更改为
$result = mysql_query($sql) or die(mysql_error());
您将立即看到问题。
作为旁注:考虑切换到mysqli
或PDO
,因为现在已弃用mysql_*
函数。
答案 1 :(得分:0)
你说
WHERE id = '1'
改为执行此操作(删除单引号):
WHERE id = 1
因此,您要求对整数但不是字符串进行匹配。
答案 2 :(得分:-1)
错误消息表示运行查询失败。
测试查询的最简单方法是打开一个phpmyadmin或mysql控制台(使用相同的用户),然后运行这个确切的查询。