-1
我有一个4表合并进行,最后我希望它根据某个变量按“ORDER BY”排序。现在这总是返回相同的条目顺序。MYSQL Order By column_name与许多表左连接
喜欢的东西:
if(isset($_GET['filter'])){
$filter = $_GET['filter'];
#Example $filter = 'date' or team or game_num
$q = $db->prepare("SELECT g.game_num, s.date, t.team
FROM schedule n
LEFT JOIN g_lkp g
ON n.game_num = g.game_num
LEFT JOIN dates s
ON n.date = s.date
LEFT JOIN teams t
ON n.home_team_nbr = t.team
ORDER BY '$filter' ");
$q->execute();
$qR = $q->fetchAll(PDO::FETCH_ASSOC);
if ($q->rowCount() > 0) {
foreach ($qR as $row) {
echo '
为什么你逝去$ fileter在'为了by'作为一个字符串?它不应该是不变的 - 它应该是这样的:'g.game_num,s.date'命令。 –
它会通过页面请求进入,如/php/page.php?filter=date – user3697407
将GET参数放入您的SQL语句也是一个坏主意 - 它是直接获取SQL注入漏洞的方法 –