OR qui agit comme un AND

Petit nouveau ! | 1 Messages

30 mars 2006, 06:56

Bonjour !

J'essaie de faire une requête sous MySQL pour obtenir toutes les insertions qui contiennent un certain mot dans un champ titre ou message.

Pour le moment j'ai la requête suivante (à partir de PHP) :

Code : Tout sélectionner

$q = "SELECT * FROM table WHERE message LIKE '%".$_POST['mot']."%' OR titre LIKE '%".$_POST['mot']."%' ORDER BY date DESC"
où $_POST['mot'] est le mot en question.

Le problème en tant que tel, c'est que le OR agit comme si il était un AND, du moins presque, puisque si le mot est dans le titre et non dans le message, l'insertion est retournée (mais pas à l'inverse). Une solution ?

Mammouth du PHP | 19672 Messages

30 mars 2006, 09:32

d'après ta requête, ça devrait fonctionner normalement et que tu aies le mot dans l'une ou l'autre colonne voire les deux devrait te retourner la ligne correspondante. Aurais-tu un exemple où il est flagrant que ça ne fonctionne pas ?
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe: