0

我在使用 varables 用 php 更新 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);

谢谢 :)

4

2 回答 2

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 使用准备好的语句也是可能的,而且很棒。通过某种方式,您还需要在其中绑定参数..

于 2013-03-27T01:50:44.593 回答
1

您必须通过创建一个新的 mysqli 对象来声明 $connection。如果你没有这样做,你可以查看mysqli 构造函数的文档

这是文档中的代码。

$connection = new mysqli('localhost', 'my_user', 'my_password', 'my_db');

if ($connection->connect_error) {
    die('Connect Error (' . $connection->connect_errno . ') '
            . $connection->connect_error);
于 2013-03-27T01:53:19.197 回答