【发布时间】:2018-10-16 18:31:52
【问题描述】:
如果我添加另一个用户,我的用户名将添加到 user1 如果另一个用户添加我,则用户名将添加到 user1 并我的到 user2
所以我需要尝试从 user1 和 user2 中获取所有被接受的 id 是 1
我喜欢这样
$id = $_SESSION['user_id'] ;
$yes = '1';
$query = $db2->prepare("SELECT * FROM friend_requests WHERE (user1='".$id."' OR user2='".$id."') AND accepted = '".$yes."'");
$query->execute();
foreach ($query as $row) {
print $row['user1'] . "\t";
print $row['user2'] . "\t";
}
但是现在我有 $row['user2'] 和 $row['user1'] 有没有办法将它们组合在一起?所以我可以简单地做一个 pdo 循环选择状态是 id = that 吗?
我试图获取所有状态为 id = $row['user1'] 或 $row['user2'] 但我不想在我的 pdo 选择中使用或。
【问题讨论】:
-
您正在使用
->prepare(),但仍将数据直接注入查询?为什么?? -
我只使用用户 ID,它在进入会话之前是安全的。他们$是的,我做我自己
-
在 PHP 中进行查询的一个好方法是总是对 EVERY LAST QUERY使用预先准备好的语句> 这样,如果您将查询更改为使用用户提交的数据,就不会意外打开安全漏洞