我試圖從列「activePages」列出某個id號的表中調用一個隨機行。在Like Operator中使用變量
例如,activePages可能包含「123 456」上的一排,「456 789」上的另一個我用下面的代碼:
SELECT * FROM advertising WHERE activePages LIKE %456% ORDER BY rand() LIMIT 1
...調用這些兩行的一個隨機。
我想做同樣的事情,但是用一個變量代替「456」。我需要把這個工作的百分比放在哪裏?或者我完全錯過了另一個問題?
這就是我現在所擁有的:
$getad = $pdo->prepare('SELECT * FROM advertising WHERE activePages LIKE :id ORDER BY rand() LIMIT 1');
$getad->execute(['id' => $id]);
請https://dev.mysql.com/doc/refman/5.7/en/string-comparison-functions.html#operator_like –
您需要雙方的通配符,並且您需要將其附加到綁定中,或在變量賦值上。見例6,http://php.net/manual/en/pdo.prepared-statements.php。 – chris85