下面的函数设置为:
- 从我的数据库中收集
user_id
,如下所示WHERE subscriber = '$user'
。然后: - 返回
user_id
可能的多个值。
但是,当我尝试使用此函数时,它只收集了一个数组,键为 0
,值为 user_id
。出于明显的原因,我希望数组包含我数据库中 user_id
列中的数值,键为 user_id
。
function get_subscribitions($user)
{
$user = mysql_real_escape_string ($user);
$sql = "SELECT 'user_id' FROM `subscribe` WHERE subscriber = '$user'";
$result = mysql_query($sql);
$rows = array();
while ($row = mysql_fetch_assoc($result)) {
$rows[] = $row;
}
mysql_free_result($result);
return $rows;
}
谁能指出我在哪里犯了导致这些相关问题的错误?
感谢任何帮助,提前致谢!
最佳答案
应该是:
function get_subscribitions($user)
{
$user = mysql_real_escape_string ($user);
$sql = "SELECT user_id FROM `subscribe` WHERE subscriber = '$user'";
$result = mysql_query($sql);
$rows = array();
while ($row = mysql_fetch_assoc($result)) {
$rows[] = $row['user_id'];
}
mysql_free_result($result);
return $rows;
}
查询中有不必要的引号,您没有正确读取 $row 数组
关于php - 查询未在函数中返回正确的结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7859583/