MySQLi程序查询不起作用

时间:2012-07-19 22:44:25

标签: php mysqli

此查询未更新数据库中的行。

$link = mysqli_connect("localhost", "username", "password", "database");
mysqli_query("UPDATE `LOGIN` SET `HASH`='$hash' WHERE `USER`='$user'");

它根本不更新行中的哈希值。我已经检查了PMA中的查询,它似乎正在运行。我已经在屏幕上回显了我的$ hash和$ user变量以确保它们是有效的,并且它们是。 mysqli_connect凭据也正确...任何输入?

我还在mysqli_query上添加了这个,它只打印出“Error desc:”,因为我认为我的服务器有错误。

or die("Error desc: ".mysqli_error($link));

感谢您的帮助!

编辑:该表有大约3条记录,所以这里没有重复问题。此外,在任何人提到它之前,我将为每个用户添加一个主键,我会在我弄清楚发生了什么后将mysqli切换到OO样式。

2 个答案:

答案 0 :(得分:1)

alfasin在评论中写道使用bind_param(http://www.php.net/manual/en/mysqli-stmt.bind-param.php)

效果很好。这对OO和程序都有好处。

答案 1 :(得分:-1)

$ link = mysqli_connect(“localhost”,“username”,“password”,“database”); $ result = mysqli_query($ link,“UPDATE LOGIN SET HASH ='$ hash'WHERE USER ='$ user'”);