我遇到了一点麻烦。我需要在表中返回一组数据。
快速这是表结构 -
DB ->
users -> user_id , user_name , user_pass , user_email ;
urls -> user_id , url , title ;
在页面上,我有当前登录的用户,user_id $_SESSION 变量 - 会话"user_id"。我需要返回 urls 表内与 SESSION 变量中设置的匹配user_id相同的所有 (url)。这是我拥有的代码,它几乎可以工作,但是当我尝试获取数组时,它正在从$results中获取布尔值。任何帮助将不胜感激!print_r的最后一行只是为了查看返回的内容。
$mysqli = mysqli_connect(DB_HOST, DB_USER, DB_PASS, DB_NAME);
$sql = "SELECT * FROM url WHERE user_id = ";
$sql .= mysqli_real_escape_string($mysqli, $_SESSION['user_id']);
$result = mysqli_query($mysqli, $sql);
$row = mysqli_fetch_array($result, MYSQLI_NUM);
print_r($row);
这是我得到的错误 -
Warning: mysqli_fetch_array() expects parameter 1 to be mysqli_result, boolean given in C:'xampp'htdocs'practice'include'feed.php on line 10
10号线是这条线...
$row = mysqli_fetch_array($result, MYSQLI_NUM);
再次感谢!
试试
$mysqli = mysqli_connect(DB_HOST, DB_USER, DB_PASS, DB_NAME);
$escapedID = mysqli_real_escape_string($mysqli, $_SESSION['user_id']);
$sql = "SELECT * FROM url WHERE user_id = '".$escapedID."'";
$result = mysqli_query($mysqli, $sql);
$row = mysqli_fetch_array($result, MYSQLI_NUM);
print_r($row);
mysqli_query()
失败时返回FALSE
。请参阅此处的文档。查询可能失败,因为您在FROM
子句中编写了"url";您在上面将表名称列为"URL"。