douzhouhan4618 2014-03-11 01:38
浏览 6
已采纳

PDO查询返回“Array”而不是value

I'm trying to get a list of usernames from my following table, and then use that list to get each user's post for a news feed, but when I try this:

    $sth = $db->query("SELECT profile FROM follows WHERE follower='$username' ");
    $following = $sth->fetchAll(PDO::FETCH_ASSOC);

    foreach ($following as $userlist) {
        $userlist_logic .= "username='$userlist' OR ";
    }

echo $userlist_logic;

Then it just returns this:

username='Array' OR username='Array' OR username='Array' OR

How do I fix it?

  • 写回答

2条回答 默认 最新

  • doubao6681 2014-03-11 01:42
    关注

    $userlist is an array instance containing the profile column for each row returned.

    The line within your foreach loop needs to be as follows:

    $userlist_logic .= "username='{$userlist['profile']}' OR ";
    

    Also, I would recommend sanitising the variable before interpolating it into the string by generating your second SQL statement within PDO and then running it through PDO prepare as detailed in this StackOverflow thread.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 网络设备配置与管理这个该怎么弄
  • ¥20 机器学习能否像多层线性模型一样处理嵌套数据
  • ¥20 西门子S7-Graph,S7-300,梯形图
  • ¥50 用易语言http 访问不了网页
  • ¥50 safari浏览器fetch提交数据后数据丢失问题
  • ¥15 matlab不知道怎么改,求解答!!
  • ¥15 永磁直线电机的电流环pi调不出来
  • ¥15 用stata实现聚类的代码
  • ¥15 请问paddlehub能支持移动端开发吗?在Android studio上该如何部署?
  • ¥20 docker里部署springboot项目,访问不到扬声器