【发布时间】:2014-02-11 19:35:49
【问题描述】:
我需要在 PDO 中插入一个 MySQL WHERE 条件作为占位符。条件取决于您对性别(社交网站)的偏好 - 下面创建到 WHERE 条件代码:
if($_SESSION['interestedMales'] && $_SESSION['interestedFemales']) {
return '(a.profile_gender=0 OR a.profile_gender=1)';
}elseif($_SESSION['interestedMales']) {
return '(a.profile_gender=1)';
}elseif($_SESSION['interestedFemales']) {
return '(a.profile_gender=0)';
}else{
return '(a.profile_gender='.$_SESSION['gender'].')';
}
返回变量 - $pdoGenderCondition
接下来我将其添加到 PHP PDO 语句中:
$sql='SELECT a.userinfo
FROM login AS a
WHERE a.photoidvisible=1 AND ? LIMIT 9;';
echo $sql;
$pds=$database_users->pdo->prepare($sql); $pds->execute(array($pdoGenderCondition)); $rows=$pds->fetchAll();
我在哪里运行,我没有得到任何结果。
如果我直接将 $pdoGenderCondition 放入 PHP PDO 语句中,它就可以工作。
我猜你不能将这种 WHERE 子句即时放入 PDO,但我相信我以前见过。
我可以使用多个 SELECT 语句,但宁愿使用一个。
任何建议将不胜感激。
谢谢 亚当
【问题讨论】: