将旧的mysqli代码更新为新的PHP 5.4

时间:2014-08-20 19:18:04

标签: php mysql mysqli

我最近将服务器上的PHP更新为5.4,我正在通过我的代码更新它以匹配。当我到达升级数据库查询的时候,我开始遇到无法解决的问题。之前的所有工作以及我所有关于SQL的更改都是过程调用函数名称。例如:

$stmt = mysqli_prepare($mysqli, “SQL query”);

现在变成,

 $stmt = mysqli_stmt_init($mysqli);
mysqli_stmt_prepare($stmt, $sqlReq);
$sqlReq = "SQL query";

我经历了多种形式的错误检查,现在知道了,

mysqli_stmt_prepare($stmt, $sqlReq);

返回“false”,因此我收到错误:

  

警告:mysqli_stmt_bind_param():/ file / location /

中的无效对象或资源mysqli_stmt

用于绑定参数。在下面的代码中,我已经删除了错误检查,因为我知道它将失败任何错误检查,但我不明白为什么。所以我要问的是,我为PHP 5.4的新mysqli做错了什么

$mysqli = mysqli_connect('localhost', 'my_user', 'my_password', 'my_db');
$sqlReq = "SELECT * FROM table_name WHERE column_name = ?"; 
$stmt = mysqli_stmt_init($mysqli);
mysqli_stmt_prepare($stmt, $sqlReq);
mysqli_stmt_bind_param($stmt, "s", $variable0);
mysqli_stmt_execute($stmt);
mysqli_stmt_store_result($stmt);
mysqli_stmt_bind_result($stmt, $variable1, $variable2, $variable3);
mysqli_stmt_close($stmt);   
mysqli_close($mysqli);

0 个答案:

没有答案