0

错误:

Warning: mysql_query(): supplied argument is not a valid MySQL-Link resource in /var/www/247QC/system/core.php on line 21
Invalid query: Whole query: SELECT * FROM users WHERE username='matt' AND password='5657572fc913e2d2a9548ba4f4'

据我所知,我的代码没有做错任何事情,但我想我会问,因为我上次使用MySQL是 2 年前,事情可能会改变。

我想知道错误是什么以及如何解决它,我在谷歌搜索最后一个小时后发现这是一个连接问题,并且在测试后它正确连接到服务器(使用主机名而不是 IP 地址)

它使用的MySQL引擎是InnoDB和排序规则latin1_swedish_ci

代码

$r_hostname = "monitor";
$r_username = "QCSYSTEM";
$r_password = "123456";
$link = mysql_connect($r_hostname,$r_username,$r_password);
$db = mysql_select_db('QCSYSTEM', $link);

$Password = sha1($_POST['password']);
$username = $_POST['username'];


$query = sprintf("SELECT * FROM users WHERE username='%s' AND password='%s'",
         mysql_real_escape_string($username),
         mysql_real_escape_string($Password));
$result = mysql_query($query,$db);                  

if (!$result) {
    $message  = 'Invalid query: ' . mysql_error() . "\n";
    $message .= 'Whole query: ' . $query;
    die($message);
} else {
    print "success";                            
}
4

1 回答 1

3

第二个参数mysql_query应该是一个链接标识符。您正在使用$db作为第二个参数,它只是一个布尔值。尝试这个..

$result = mysql_query($query,$link);    

或者只是不传递任何第二个参数。

于 2013-05-24T05:42:05.093 回答