我看过here (以及许多许多其他地方)在我提出问题之前。
我尝试过以下格式'".$user_id."''$user_id'
甚至 ?
用作我的变量持有者,但我仍然遇到相同的错误。我还尝试将 $_GET
更改为 $_POST
。
这是我的代码。
<?php
$connection = mysqli_connect("db_name", "user", "pass", "db") or die(mysqli_error($con);
$user_id = $_GET["user_id"];
$event_id = $_GET["event_id"];
$query = "SELECT * FROM user where user_id BETWEEN('".$user_id."'+1) and ('".$user_id."'+4);";
$query .= "SELECT * FROM user_in_event WHERE user_id = '".$user_id."' AND event_id = '".$event_id."' ";
if (mysqli_multi_query($connection, $query) or die(mysqli_error($connection).$query) ){
do {
/* store first result set */
if ($result = mysqli_store_result($connection) or die(mysqli_error($con))) {
while ($row = mysqli_fetch_assoc($result) or die(mysqli_error($con)))
$array[] = $row;
mysqli_free_result($result) or die(mysqli_error($con));
}
} while (mysqli_next_result($connection) or die(mysqli_error($con)));
}
header('Content-Type:Application/json');
echo json_encode($array);
?>
这就是错误
mysqli_error() expects parameter 1 to be mysqli null given
我已经检查了数据库本身,查询工作正常
*编辑 将“con”修复为“connection”,但现在我没有得到所需的结果,而是变得空白
最佳答案
mysqli_error()
期望第一个参数是 mysqli 资源。在您的情况下,您使用的是 undefined variable $con
,它保存空值。
mysqli资源通常是通过调用mysqli_connect
连接数据库来获取的。
因此,$con
应替换为 mysqli_error()
中的 $connection
。
关于php - PHP 查询中的变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41386892/