Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/62.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():提供的参数不是有效的mysql_Php_Mysql - Fatal编程技术网

Php 警告:mysql\u fetch\u assoc():提供的参数不是有效的mysql

Php 警告:mysql\u fetch\u assoc():提供的参数不是有效的mysql,php,mysql,Php,Mysql,那个错误给我带来了一些麻烦 警告:mysql\u fetch\u assoc():提供的参数在资源中不是有效的mysql结果 事实上,由于没有全局变量,我将所有查询都放在函数中 我的查询没有问题,其他地方的名称字段没有错误 问题是,在本地,一切都可以正常工作,当我把它放到网上时,它不起作用,而且在任何地方它都会给我一些错误 对于家庭,我有以下错误: Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL resul

那个错误给我带来了一些麻烦

警告:mysql\u fetch\u 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);
}
还有另一个查询

/** *个人身份基金会。 *@param type$id *@返回类型 */

我真的没有在文件名上看到任何错误,我确信我的查询是有效的资源。(适用于本地,但不适用于服务器)。基于PHP5.4的即时通讯

在其他页面上,我仍然有同样的错误


非常感谢任何帮助。

错误消息表示运行查询失败


测试查询的最简单方法是打开一个phpmyadmin或mysql控制台(使用同一用户),并运行这个精确的查询。

检查
mysql\u查询的返回值。它可以是结果集,但也可以是值
false
。将您的查询更改为

$result = mysql_query($sql) or die(mysql_error());
你会立刻发现问题所在

作为一个旁注:考虑切换到代码> MySqLI[/COD]或 PDO,因为现在“代码> MySqL**函数已被弃用。

< P>您说

WHERE id = '1'
改为这样做(删除单个报价):


因此,您请求一个整数而不是字符串的匹配。

事实上,在另一个主题中,如果是关于布尔的,那么这不是相同的错误,因为您的SQL查询似乎没有问题。我猜是其他地方出了问题,例如连接到数据库等。请尝试
echo mysql_error()
查看mysql在
id
=“1”处的实际抱怨;这里您要求的id是字符串,但不是整数,可能是原因。重复的问题告诉您如何查找和修复错误我的查询正常,在本地有效,在phpMyAdmin有效,您确定我的注释不是可能的原因吗?查询正常,但
$result
似乎不正常
mysql\u query
应该返回一个资源(结果集或其他),但您似乎没有这样的资源(改为false?)请尝试var\u转储您的
$result
好的,谢谢。就是这样。但我不明白,为什么在localhost上使用这种语法?这基本上是我的评论:)@StanislasPiotrowski我不知道。我刚在我的机器上验证过,你是对的。使用
mysql
命令行工具,您可以使用
'1'
1
,两者都可以正常工作。@StanislasPiotrowski我做了更多的测试,无论是使用
'1'
还是普通
1
,都没有什么区别。因此,您应该检查得到的错误,并查看查询失败的原因。
WHERE id = '1'
WHERE id = 1