0
我需要從包含where條件的SQL中獲取結果。但是,如果條件滿足某些標準,那麼某些情況下可以執行。SQL中的IF語句中的條件
我嘗試:
$query = "SELECT m.id, m.message_type, m.message_url, m.user_id, c.type
FROM gps_conversation_chat m left join gps_conversation c on m.conversation_id=c.id
WHERE m.conversation_id = $conv_id
IF c.type=1 THEN
AND m.from_message_in != 2 AND m.to_message_in != 2
END IF;
ORDER BY m.id DESC LIMIT $start, $limit ";
上述返回錯誤,我需要的IF條件進行處理,即:
如果c.type = 1,則執行AND m.from_message_in = 2 AND m.to_message_in!= 2與WHERE條件。
如何做到這一點?
關於** SQL注入攻擊**的一個疑問是,他使用了$ conv_id直接對變量的類型嗎? – 2014-09-19 05:09:00
@Suganthan直接使用的任何變量都可以成爲SQL注入攻擊的訪問點...使用預準備語句 – Barranka 2014-09-19 14:28:14