我在使用变量更新mysql时出现问题。
mysqli_query($connection, "UPDATE passwords SET used=1, time_used='{$time}'
WHERE password='{$key}'
");
我收到了错误:
Warning: mysqli_query() expects parameter 1 to be mysqli, resource given in C:\wamp\www\key_check.php on line 47
任何想法为什么?
谢谢!
编辑:整个代码:http://pastebin.com/raw.php?i=W5cx8pBP
“新mysqli”解决方案似乎在尝试
时遇到问题$result = mysql_query("SELECT * FROM passwords", $connection);
谢谢:)
答案 0 :(得分:2)
您的连接设置必须如
$connection = new mysqli($host,$username,$pass,$db);
然后使用您的方式或通过这种方式执行查询
$query="UPDATE passwords SET used=1, time_used='{$time}'
WHERE password='{$key}'
";
$stmt = $connection->query($sql);
注意:使用mysqli的预处理语句也可能很棒。通过某种方式你还需要在那里绑定参数..
答案 1 :(得分:1)
您必须通过创建新的mysqli对象来声明$ connection。如果您没有这样做,可以查看documentation for mysqli constructor
以下是文档中的代码。
$connection = new mysqli('localhost', 'my_user', 'my_password', 'my_db');
if ($connection->connect_error) {
die('Connect Error (' . $connection->connect_errno . ') '
. $connection->connect_error);