par
achaab » 20 févr. 2013, 02:51
Bonjour tout le monde,
J'ai une requête SQL qui varie en fonction de la présence de un ou de plusieurs mots prédéfinit dans une phrase, avec un maximum de 8 mots.
Peu importe l'ordre des mots dans ma phrase.
(Les mots en question étant MNK, PLD, WAR, BRD, DRG, BLM, WHM et SMN).
Pour le moment, j'ai essayé de les gérer comme ceci (j'ai inversé l'ordre dans lequel je l'ai écris dans mon fichier pour faciliter la lecture):
// Combinaisons à 1 possibilité
else if ( preg_match('/MNK/', $row2['sdesc']) ){$requete = 'WHERE MNK = 1';}
else if ( preg_match('/PLD/', $row2['sdesc']) ){$requete = 'WHERE PLD = 1';}
else if ( preg_match('/WAR/', $row2['sdesc']) ){$requete = 'WHERE WAR = 1';}
else if ( preg_match('/BRD/', $row2['sdesc']) ){$requete = 'WHERE BRD = 1';}
else if ( preg_match('/DRG/', $row2['sdesc']) ){$requete = 'WHERE DRG = 1';}
else if ( preg_match('/BLM/', $row2['sdesc']) ){$requete = 'WHERE BLM = 1';}
else if ( preg_match('/WHM/', $row2['sdesc']) ){$requete = 'WHERE WHM = 1';}
else if ( preg_match('/SMN/', $row2['sdesc']) ){$requete = 'WHERE SMN = 1';}
// Combinaisons à 2 possibilités
else if ( preg_match('/WHM/', $row2['sdesc']) && preg_match('/SMN/', $row2['sdesc']) ){$requete = 'WHERE WHM = 1 OR SMN = 1';}
else if ( preg_match('/BLM/', $row2['sdesc']) && preg_match('/WHM/', $row2['sdesc']) ){$requete = 'WHERE BLM = 1 OR WHM = 1';}
else if ( preg_match('/BLM/', $row2['sdesc']) && preg_match('/SMN/', $row2['sdesc']) ){$requete = 'WHERE BLM = 1 OR SMN = 1';}
else if ( preg_match('/DRG/', $row2['sdesc']) && preg_match('/BLM/', $row2['sdesc']) ){$requete = 'WHERE DRG = 1 OR BLM = 1';}
else if ( preg_match('/DRG/', $row2['sdesc']) && preg_match('/WHM/', $row2['sdesc']) ){$requete = 'WHERE DRG = 1 OR WHM = 1';}
else if ( preg_match('/DRG/', $row2['sdesc']) && preg_match('/SMN/', $row2['sdesc']) ){$requete = 'WHERE DRG = 1 OR SMN = 1';}
else if ( preg_match('/BRD/', $row2['sdesc']) && preg_match('/DRG/', $row2['sdesc']) ){$requete = 'WHERE BRD = 1 OR DRG = 1';}
else if ( preg_match('/BRD/', $row2['sdesc']) && preg_match('/BLM/', $row2['sdesc']) ){$requete = 'WHERE BRD = 1 OR BLM = 1';}
else if ( preg_match('/BRD/', $row2['sdesc']) && preg_match('/WHM/', $row2['sdesc']) ){$requete = 'WHERE BRD = 1 OR WHM = 1';}
else if ( preg_match('/BRD/', $row2['sdesc']) && preg_match('/SMN/', $row2['sdesc']) ){$requete = 'WHERE BRD = 1 OR SMN = 1';}
else if ( preg_match('/WAR/', $row2['sdesc']) && preg_match('/BRD/', $row2['sdesc']) ){$requete = 'WHERE WAR = 1 OR BRD = 1';}
else if ( preg_match('/WAR/', $row2['sdesc']) && preg_match('/DRG/', $row2['sdesc']) ){$requete = 'WHERE WAR = 1 OR DRG = 1';}
else if ( preg_match('/WAR/', $row2['sdesc']) && preg_match('/BLM/', $row2['sdesc']) ){$requete = 'WHERE WAR = 1 OR BLM = 1';}
else if ( preg_match('/WAR/', $row2['sdesc']) && preg_match('/WHM/', $row2['sdesc']) ){$requete = 'WHERE WAR = 1 OR WHM = 1';}
else if ( preg_match('/WAR/', $row2['sdesc']) && preg_match('/SMN/', $row2['sdesc']) ){$requete = 'WHERE WAR = 1 OR SMN = 1';}
else if ( preg_match('/PLD/', $row2['sdesc']) && preg_match('/WAR/', $row2['sdesc']) ){$requete = 'WHERE PLD = 1 OR WAR = 1';}
else if ( preg_match('/PLD/', $row2['sdesc']) && preg_match('/BRD/', $row2['sdesc']) ){$requete = 'WHERE PLD = 1 OR BRD = 1';}
else if ( preg_match('/PLD/', $row2['sdesc']) && preg_match('/DRG/', $row2['sdesc']) ){$requete = 'WHERE PLD = 1 OR DRG = 1';}
else if ( preg_match('/PLD/', $row2['sdesc']) && preg_match('/BLM/', $row2['sdesc']) ){$requete = 'WHERE PLD = 1 OR BLM = 1';}
else if ( preg_match('/PLD/', $row2['sdesc']) && preg_match('/WHM/', $row2['sdesc']) ){$requete = 'WHERE PLD = 1 OR WHM = 1';}
else if ( preg_match('/PLD/', $row2['sdesc']) && preg_match('/SMN/', $row2['sdesc']) ){$requete = 'WHERE PLD = 1 OR SMN = 1';}
else if ( preg_match('/MNK/', $row2['sdesc']) && preg_match('/PLD/', $row2['sdesc']) ){$requete = 'WHERE MNK = 1 OR PLD = 1';}
else if ( preg_match('/MNK/', $row2['sdesc']) && preg_match('/WAR/', $row2['sdesc']) ){$requete = 'WHERE MNK = 1 OR WAR = 1';}
else if ( preg_match('/MNK/', $row2['sdesc']) && preg_match('/BRD/', $row2['sdesc']) ){$requete = 'WHERE MNK = 1 OR BRD = 1';}
else if ( preg_match('/MNK/', $row2['sdesc']) && preg_match('/DRG/', $row2['sdesc']) ){$requete = 'WHERE MNK = 1 OR DRG = 1';}
else if ( preg_match('/MNK/', $row2['sdesc']) && preg_match('/BLM/', $row2['sdesc']) ){$requete = 'WHERE MNK = 1 OR BLM = 1';}
else if ( preg_match('/MNK/', $row2['sdesc']) && preg_match('/WHM/', $row2['sdesc']) ){$requete = 'WHERE MNK = 1 OR WHM = 1';}
else if ( preg_match('/MNK/', $row2['sdesc']) && preg_match('/SMN/', $row2['sdesc']) ){$requete = 'WHERE MNK = 1 OR SMN = 1';}
// Combinaisons à 3 possibilités
else if ( preg_match('/BLM/', $row2['sdesc']) && preg_match('/WHM/', $row2['sdesc']) && preg_match('/SMN/', $row2['sdesc']) ){$requete = 'WHERE BLM = 1 OR WHM = 1 OR SMN = 1';}
else if ( preg_match('/DRG/', $row2['sdesc']) && preg_match('/BLM/', $row2['sdesc']) && preg_match('/WHM/', $row2['sdesc']) ){$requete = 'WHERE DRG = 1 OR BLM = 1 OR WHM = 1';}
else if ( preg_match('/DRG/', $row2['sdesc']) && preg_match('/WHM/', $row2['sdesc']) && preg_match('/SMN/', $row2['sdesc']) ){$requete = 'WHERE DRG = 1 OR WHM = 1 OR SMN = 1';}
else if ( preg_match('/BRD/', $row2['sdesc']) && preg_match('/WHM/', $row2['sdesc']) && preg_match('/SMN/', $row2['sdesc']) ){$requete = 'WHERE BRD = 1 OR WHM = 1 OR SMN = 1';}
else if ( preg_match('/BRD/', $row2['sdesc']) && preg_match('/BLM/', $row2['sdesc']) && preg_match('/WHM/', $row2['sdesc']) ){$requete = 'WHERE BRD = 1 OR BLM = 1 OR WHM = 1';}
else if ( preg_match('/BRD/', $row2['sdesc']) && preg_match('/BLM/', $row2['sdesc']) && preg_match('/SMN/', $row2['sdesc']) ){$requete = 'WHERE BRD = 1 OR BLM = 1 OR SMN = 1';}
else if ( preg_match('/BRD/', $row2['sdesc']) && preg_match('/DRG/', $row2['sdesc']) && preg_match('/BLM/', $row2['sdesc']) ){$requete = 'WHERE BRD = 1 OR DRG = 1 OR BLM = 1';}
else if ( preg_match('/BRD/', $row2['sdesc']) && preg_match('/DRG/', $row2['sdesc']) && preg_match('/WHM/', $row2['sdesc']) ){$requete = 'WHERE BRD = 1 OR DRG = 1 OR WHM = 1';}
else if ( preg_match('/BRD/', $row2['sdesc']) && preg_match('/DRG/', $row2['sdesc']) && preg_match('/SMN/', $row2['sdesc']) ){$requete = 'WHERE BRD = 1 OR DRG = 1 OR SMN = 1';}
else if ( preg_match('/WAR/', $row2['sdesc']) && preg_match('/WHM/', $row2['sdesc']) && preg_match('/SMN/', $row2['sdesc']) ){$requete = 'WHERE WAR = 1 OR WHM = 1 OR SMN = 1';}
else if ( preg_match('/WAR/', $row2['sdesc']) && preg_match('/BLM/', $row2['sdesc']) && preg_match('/WHM/', $row2['sdesc']) ){$requete = 'WHERE WAR = 1 OR BLM = 1 OR WHM = 1';}
else if ( preg_match('/WAR/', $row2['sdesc']) && preg_match('/BLM/', $row2['sdesc']) && preg_match('/SMN/', $row2['sdesc']) ){$requete = 'WHERE WAR = 1 OR BLM = 1 OR SMN = 1';}
else if ( preg_match('/WAR/', $row2['sdesc']) && preg_match('/DRG/', $row2['sdesc']) && preg_match('/BLM/', $row2['sdesc']) ){$requete = 'WHERE WAR = 1 OR DRG = 1 OR BLM = 1';}
else if ( preg_match('/WAR/', $row2['sdesc']) && preg_match('/DRG/', $row2['sdesc']) && preg_match('/WHM/', $row2['sdesc']) ){$requete = 'WHERE WAR = 1 OR DRG = 1 OR WHM = 1';}
else if ( preg_match('/WAR/', $row2['sdesc']) && preg_match('/DRG/', $row2['sdesc']) && preg_match('/SMN/', $row2['sdesc']) ){$requete = 'WHERE WAR = 1 OR DRG = 1 OR SMN = 1';}
else if ( preg_match('/WAR/', $row2['sdesc']) && preg_match('/BRD/', $row2['sdesc']) && preg_match('/DRG/', $row2['sdesc']) ){$requete = 'WHERE WAR = 1 OR BRD = 1 OR DRG = 1';}
else if ( preg_match('/WAR/', $row2['sdesc']) && preg_match('/BRD/', $row2['sdesc']) && preg_match('/BLM/', $row2['sdesc']) ){$requete = 'WHERE WAR = 1 OR BRD = 1 OR BLM = 1';}
else if ( preg_match('/WAR/', $row2['sdesc']) && preg_match('/BRD/', $row2['sdesc']) && preg_match('/WHM/', $row2['sdesc']) ){$requete = 'WHERE WAR = 1 OR BRD = 1 OR WHM = 1';}
else if ( preg_match('/WAR/', $row2['sdesc']) && preg_match('/BRD/', $row2['sdesc']) && preg_match('/SMN/', $row2['sdesc']) ){$requete = 'WHERE WAR = 1 OR BRD = 1 OR SMN = 1';}
else if ( preg_match('/PLD/', $row2['sdesc']) && preg_match('/WHM/', $row2['sdesc']) && preg_match('/SMN/', $row2['sdesc']) ){$requete = 'WHERE PLD = 1 OR WHM = 1 OR SMN = 1';}
else if ( preg_match('/PLD/', $row2['sdesc']) && preg_match('/BLM/', $row2['sdesc']) && preg_match('/WHM/', $row2['sdesc']) ){$requete = 'WHERE PLD = 1 OR BLM = 1 OR WHM = 1';}
else if ( preg_match('/PLD/', $row2['sdesc']) && preg_match('/BLM/', $row2['sdesc']) && preg_match('/SMN/', $row2['sdesc']) ){$requete = 'WHERE PLD = 1 OR BLM = 1 OR SMN = 1';}
else if ( preg_match('/PLD/', $row2['sdesc']) && preg_match('/DRG/', $row2['sdesc']) && preg_match('/BLM/', $row2['sdesc']) ){$requete = 'WHERE PLD = 1 OR DRG = 1 OR BLM = 1';}
else if ( preg_match('/PLD/', $row2['sdesc']) && preg_match('/DRG/', $row2['sdesc']) && preg_match('/WHM/', $row2['sdesc']) ){$requete = 'WHERE PLD = 1 OR DRG = 1 OR WHM = 1';}
else if ( preg_match('/PLD/', $row2['sdesc']) && preg_match('/DRG/', $row2['sdesc']) && preg_match('/SMN/', $row2['sdesc']) ){$requete = 'WHERE PLD = 1 OR DRG = 1 OR SMN = 1';}
else if ( preg_match('/PLD/', $row2['sdesc']) && preg_match('/BRD/', $row2['sdesc']) && preg_match('/DRG/', $row2['sdesc']) ){$requete = 'WHERE PLD = 1 OR BRD = 1 OR DRG = 1';}
else if ( preg_match('/PLD/', $row2['sdesc']) && preg_match('/BRD/', $row2['sdesc']) && preg_match('/BLM/', $row2['sdesc']) ){$requete = 'WHERE PLD = 1 OR BRD = 1 OR BLM = 1';}
else if ( preg_match('/PLD/', $row2['sdesc']) && preg_match('/BRD/', $row2['sdesc']) && preg_match('/WHM/', $row2['sdesc']) ){$requete = 'WHERE PLD = 1 OR BRD = 1 OR WHM = 1';}
else if ( preg_match('/PLD/', $row2['sdesc']) && preg_match('/BRD/', $row2['sdesc']) && preg_match('/SMN/', $row2['sdesc']) ){$requete = 'WHERE PLD = 1 OR BRD = 1 OR SMN = 1';}
else if ( preg_match('/PLD/', $row2['sdesc']) && preg_match('/WAR/', $row2['sdesc']) && preg_match('/BRD/', $row2['sdesc']) ){$requete = 'WHERE PLD = 1 OR WAR = 1 OR BRD = 1';}
else if ( preg_match('/PLD/', $row2['sdesc']) && preg_match('/WAR/', $row2['sdesc']) && preg_match('/DRG/', $row2['sdesc']) ){$requete = 'WHERE PLD = 1 OR WAR = 1 OR DRG = 1';}
else if ( preg_match('/PLD/', $row2['sdesc']) && preg_match('/WAR/', $row2['sdesc']) && preg_match('/BLM/', $row2['sdesc']) ){$requete = 'WHERE PLD = 1 OR WAR = 1 OR BLM = 1';}
else if ( preg_match('/PLD/', $row2['sdesc']) && preg_match('/WAR/', $row2['sdesc']) && preg_match('/WHM/', $row2['sdesc']) ){$requete = 'WHERE PLD = 1 OR WAR = 1 OR WHM = 1';}
else if ( preg_match('/PLD/', $row2['sdesc']) && preg_match('/WAR/', $row2['sdesc']) && preg_match('/SMN/', $row2['sdesc']) ){$requete = 'WHERE PLD = 1 OR WAR = 1 OR SMN = 1';}
else if ( preg_match('/MNK/', $row2['sdesc']) && preg_match('/WHM/', $row2['sdesc']) && preg_match('/SMN/', $row2['sdesc']) ){$requete = 'WHERE MNK = 1 OR WHM = 1 OR SMN = 1';}
else if ( preg_match('/MNK/', $row2['sdesc']) && preg_match('/BLM/', $row2['sdesc']) && preg_match('/WHM/', $row2['sdesc']) ){$requete = 'WHERE MNK = 1 OR BLM = 1 OR WHM = 1';}
else if ( preg_match('/MNK/', $row2['sdesc']) && preg_match('/BLM/', $row2['sdesc']) && preg_match('/SMN/', $row2['sdesc']) ){$requete = 'WHERE MNK = 1 OR BLM = 1 OR SMN = 1';}
else if ( preg_match('/MNK/', $row2['sdesc']) && preg_match('/DRG/', $row2['sdesc']) && preg_match('/BLM/', $row2['sdesc']) ){$requete = 'WHERE MNK = 1 OR DRG = 1 OR BLM = 1';}
else if ( preg_match('/MNK/', $row2['sdesc']) && preg_match('/DRG/', $row2['sdesc']) && preg_match('/WHM/', $row2['sdesc']) ){$requete = 'WHERE MNK = 1 OR DRG = 1 OR WHM = 1';}
else if ( preg_match('/MNK/', $row2['sdesc']) && preg_match('/DRG/', $row2['sdesc']) && preg_match('/SMN/', $row2['sdesc']) ){$requete = 'WHERE MNK = 1 OR DRG = 1 OR SMN = 1';}
else if ( preg_match('/MNK/', $row2['sdesc']) && preg_match('/BRD/', $row2['sdesc']) && preg_match('/DRG/', $row2['sdesc']) ){$requete = 'WHERE MNK = 1 OR BRD = 1 OR DRG = 1';}
else if ( preg_match('/MNK/', $row2['sdesc']) && preg_match('/BRD/', $row2['sdesc']) && preg_match('/BLM/', $row2['sdesc']) ){$requete = 'WHERE MNK = 1 OR BRD = 1 OR BLM = 1';}
else if ( preg_match('/MNK/', $row2['sdesc']) && preg_match('/BRD/', $row2['sdesc']) && preg_match('/WHM/', $row2['sdesc']) ){$requete = 'WHERE MNK = 1 OR BRD = 1 OR WHM = 1';}
else if ( preg_match('/MNK/', $row2['sdesc']) && preg_match('/BRD/', $row2['sdesc']) && preg_match('/SMN/', $row2['sdesc']) ){$requete = 'WHERE MNK = 1 OR BRD = 1 OR SMN = 1';}
else if ( preg_match('/MNK/', $row2['sdesc']) && preg_match('/WAR/', $row2['sdesc']) && preg_match('/BRD/', $row2['sdesc']) ){$requete = 'WHERE MNK = 1 OR WAR = 1 OR BRD = 1';}
else if ( preg_match('/MNK/', $row2['sdesc']) && preg_match('/WAR/', $row2['sdesc']) && preg_match('/DRG/', $row2['sdesc']) ){$requete = 'WHERE MNK = 1 OR WAR = 1 OR DRG = 1';}
else if ( preg_match('/MNK/', $row2['sdesc']) && preg_match('/WAR/', $row2['sdesc']) && preg_match('/BLM/', $row2['sdesc']) ){$requete = 'WHERE MNK = 1 OR WAR = 1 OR BLM = 1';}
else if ( preg_match('/MNK/', $row2['sdesc']) && preg_match('/WAR/', $row2['sdesc']) && preg_match('/WHM/', $row2['sdesc']) ){$requete = 'WHERE MNK = 1 OR WAR = 1 OR WHM = 1';}
else if ( preg_match('/MNK/', $row2['sdesc']) && preg_match('/WAR/', $row2['sdesc']) && preg_match('/SMN/', $row2['sdesc']) ){$requete = 'WHERE MNK = 1 OR WAR = 1 OR SMN = 1';}
else if ( preg_match('/MNK/', $row2['sdesc']) && preg_match('/PLD/', $row2['sdesc']) && preg_match('/WAR/', $row2['sdesc']) ){$requete = 'WHERE MNK = 1 OR PLD = 1 OR WAR = 1';}
else if ( preg_match('/MNK/', $row2['sdesc']) && preg_match('/PLD/', $row2['sdesc']) && preg_match('/BRD/', $row2['sdesc']) ){$requete = 'WHERE MNK = 1 OR PLD = 1 OR BRD = 1';}
else if ( preg_match('/MNK/', $row2['sdesc']) && preg_match('/PLD/', $row2['sdesc']) && preg_match('/DRG/', $row2['sdesc']) ){$requete = 'WHERE MNK = 1 OR PLD = 1 OR DRG = 1';}
else if ( preg_match('/MNK/', $row2['sdesc']) && preg_match('/PLD/', $row2['sdesc']) && preg_match('/BLM/', $row2['sdesc']) ){$requete = 'WHERE MNK = 1 OR PLD = 1 OR BLM = 1';}
else if ( preg_match('/MNK/', $row2['sdesc']) && preg_match('/PLD/', $row2['sdesc']) && preg_match('/WHM/', $row2['sdesc']) ){$requete = 'WHERE MNK = 1 OR PLD = 1 OR WHM = 1';}
else if ( preg_match('/MNK/', $row2['sdesc']) && preg_match('/PLD/', $row2['sdesc']) && preg_match('/SMN/', $row2['sdesc']) ){$requete = 'WHERE MNK = 1 OR PLD = 1 OR SMN = 1';}
Le problème c'est que ça devient très compliqué et je suis sur que j'ai oublié des possibilités (sachant que je n'en suis qu'a 3 mots possibles... je n'ose pas imaginer la suite, ou l'ajout futur d'un mot

). Donc voila je voudrais savoir s'il était possible d'avoir un équivalent "automatique" pour gérer toutes les possibilités (sans tenir compte de l'ordre des mots) afin de faire varier ma requête en fonction de la présence de ces mots.
Merci à tous les intervenants

Bonjour tout le monde,
J'ai une requête SQL qui varie en fonction de la présence de un ou de plusieurs mots prédéfinit dans une phrase, avec un maximum de 8 mots. [u]Peu importe l'ordre des mots dans ma phrase[/u].
(Les mots en question étant MNK, PLD, WAR, BRD, DRG, BLM, WHM et SMN).
Pour le moment, j'ai essayé de les gérer comme ceci (j'ai inversé l'ordre dans lequel je l'ai écris dans mon fichier pour faciliter la lecture):[php] // Combinaisons à 1 possibilité
else if ( preg_match('/MNK/', $row2['sdesc']) ){$requete = 'WHERE MNK = 1';}
else if ( preg_match('/PLD/', $row2['sdesc']) ){$requete = 'WHERE PLD = 1';}
else if ( preg_match('/WAR/', $row2['sdesc']) ){$requete = 'WHERE WAR = 1';}
else if ( preg_match('/BRD/', $row2['sdesc']) ){$requete = 'WHERE BRD = 1';}
else if ( preg_match('/DRG/', $row2['sdesc']) ){$requete = 'WHERE DRG = 1';}
else if ( preg_match('/BLM/', $row2['sdesc']) ){$requete = 'WHERE BLM = 1';}
else if ( preg_match('/WHM/', $row2['sdesc']) ){$requete = 'WHERE WHM = 1';}
else if ( preg_match('/SMN/', $row2['sdesc']) ){$requete = 'WHERE SMN = 1';}
// Combinaisons à 2 possibilités
else if ( preg_match('/WHM/', $row2['sdesc']) && preg_match('/SMN/', $row2['sdesc']) ){$requete = 'WHERE WHM = 1 OR SMN = 1';}
else if ( preg_match('/BLM/', $row2['sdesc']) && preg_match('/WHM/', $row2['sdesc']) ){$requete = 'WHERE BLM = 1 OR WHM = 1';}
else if ( preg_match('/BLM/', $row2['sdesc']) && preg_match('/SMN/', $row2['sdesc']) ){$requete = 'WHERE BLM = 1 OR SMN = 1';}
else if ( preg_match('/DRG/', $row2['sdesc']) && preg_match('/BLM/', $row2['sdesc']) ){$requete = 'WHERE DRG = 1 OR BLM = 1';}
else if ( preg_match('/DRG/', $row2['sdesc']) && preg_match('/WHM/', $row2['sdesc']) ){$requete = 'WHERE DRG = 1 OR WHM = 1';}
else if ( preg_match('/DRG/', $row2['sdesc']) && preg_match('/SMN/', $row2['sdesc']) ){$requete = 'WHERE DRG = 1 OR SMN = 1';}
else if ( preg_match('/BRD/', $row2['sdesc']) && preg_match('/DRG/', $row2['sdesc']) ){$requete = 'WHERE BRD = 1 OR DRG = 1';}
else if ( preg_match('/BRD/', $row2['sdesc']) && preg_match('/BLM/', $row2['sdesc']) ){$requete = 'WHERE BRD = 1 OR BLM = 1';}
else if ( preg_match('/BRD/', $row2['sdesc']) && preg_match('/WHM/', $row2['sdesc']) ){$requete = 'WHERE BRD = 1 OR WHM = 1';}
else if ( preg_match('/BRD/', $row2['sdesc']) && preg_match('/SMN/', $row2['sdesc']) ){$requete = 'WHERE BRD = 1 OR SMN = 1';}
else if ( preg_match('/WAR/', $row2['sdesc']) && preg_match('/BRD/', $row2['sdesc']) ){$requete = 'WHERE WAR = 1 OR BRD = 1';}
else if ( preg_match('/WAR/', $row2['sdesc']) && preg_match('/DRG/', $row2['sdesc']) ){$requete = 'WHERE WAR = 1 OR DRG = 1';}
else if ( preg_match('/WAR/', $row2['sdesc']) && preg_match('/BLM/', $row2['sdesc']) ){$requete = 'WHERE WAR = 1 OR BLM = 1';}
else if ( preg_match('/WAR/', $row2['sdesc']) && preg_match('/WHM/', $row2['sdesc']) ){$requete = 'WHERE WAR = 1 OR WHM = 1';}
else if ( preg_match('/WAR/', $row2['sdesc']) && preg_match('/SMN/', $row2['sdesc']) ){$requete = 'WHERE WAR = 1 OR SMN = 1';}
else if ( preg_match('/PLD/', $row2['sdesc']) && preg_match('/WAR/', $row2['sdesc']) ){$requete = 'WHERE PLD = 1 OR WAR = 1';}
else if ( preg_match('/PLD/', $row2['sdesc']) && preg_match('/BRD/', $row2['sdesc']) ){$requete = 'WHERE PLD = 1 OR BRD = 1';}
else if ( preg_match('/PLD/', $row2['sdesc']) && preg_match('/DRG/', $row2['sdesc']) ){$requete = 'WHERE PLD = 1 OR DRG = 1';}
else if ( preg_match('/PLD/', $row2['sdesc']) && preg_match('/BLM/', $row2['sdesc']) ){$requete = 'WHERE PLD = 1 OR BLM = 1';}
else if ( preg_match('/PLD/', $row2['sdesc']) && preg_match('/WHM/', $row2['sdesc']) ){$requete = 'WHERE PLD = 1 OR WHM = 1';}
else if ( preg_match('/PLD/', $row2['sdesc']) && preg_match('/SMN/', $row2['sdesc']) ){$requete = 'WHERE PLD = 1 OR SMN = 1';}
else if ( preg_match('/MNK/', $row2['sdesc']) && preg_match('/PLD/', $row2['sdesc']) ){$requete = 'WHERE MNK = 1 OR PLD = 1';}
else if ( preg_match('/MNK/', $row2['sdesc']) && preg_match('/WAR/', $row2['sdesc']) ){$requete = 'WHERE MNK = 1 OR WAR = 1';}
else if ( preg_match('/MNK/', $row2['sdesc']) && preg_match('/BRD/', $row2['sdesc']) ){$requete = 'WHERE MNK = 1 OR BRD = 1';}
else if ( preg_match('/MNK/', $row2['sdesc']) && preg_match('/DRG/', $row2['sdesc']) ){$requete = 'WHERE MNK = 1 OR DRG = 1';}
else if ( preg_match('/MNK/', $row2['sdesc']) && preg_match('/BLM/', $row2['sdesc']) ){$requete = 'WHERE MNK = 1 OR BLM = 1';}
else if ( preg_match('/MNK/', $row2['sdesc']) && preg_match('/WHM/', $row2['sdesc']) ){$requete = 'WHERE MNK = 1 OR WHM = 1';}
else if ( preg_match('/MNK/', $row2['sdesc']) && preg_match('/SMN/', $row2['sdesc']) ){$requete = 'WHERE MNK = 1 OR SMN = 1';}
// Combinaisons à 3 possibilités
else if ( preg_match('/BLM/', $row2['sdesc']) && preg_match('/WHM/', $row2['sdesc']) && preg_match('/SMN/', $row2['sdesc']) ){$requete = 'WHERE BLM = 1 OR WHM = 1 OR SMN = 1';}
else if ( preg_match('/DRG/', $row2['sdesc']) && preg_match('/BLM/', $row2['sdesc']) && preg_match('/WHM/', $row2['sdesc']) ){$requete = 'WHERE DRG = 1 OR BLM = 1 OR WHM = 1';}
else if ( preg_match('/DRG/', $row2['sdesc']) && preg_match('/WHM/', $row2['sdesc']) && preg_match('/SMN/', $row2['sdesc']) ){$requete = 'WHERE DRG = 1 OR WHM = 1 OR SMN = 1';}
else if ( preg_match('/BRD/', $row2['sdesc']) && preg_match('/WHM/', $row2['sdesc']) && preg_match('/SMN/', $row2['sdesc']) ){$requete = 'WHERE BRD = 1 OR WHM = 1 OR SMN = 1';}
else if ( preg_match('/BRD/', $row2['sdesc']) && preg_match('/BLM/', $row2['sdesc']) && preg_match('/WHM/', $row2['sdesc']) ){$requete = 'WHERE BRD = 1 OR BLM = 1 OR WHM = 1';}
else if ( preg_match('/BRD/', $row2['sdesc']) && preg_match('/BLM/', $row2['sdesc']) && preg_match('/SMN/', $row2['sdesc']) ){$requete = 'WHERE BRD = 1 OR BLM = 1 OR SMN = 1';}
else if ( preg_match('/BRD/', $row2['sdesc']) && preg_match('/DRG/', $row2['sdesc']) && preg_match('/BLM/', $row2['sdesc']) ){$requete = 'WHERE BRD = 1 OR DRG = 1 OR BLM = 1';}
else if ( preg_match('/BRD/', $row2['sdesc']) && preg_match('/DRG/', $row2['sdesc']) && preg_match('/WHM/', $row2['sdesc']) ){$requete = 'WHERE BRD = 1 OR DRG = 1 OR WHM = 1';}
else if ( preg_match('/BRD/', $row2['sdesc']) && preg_match('/DRG/', $row2['sdesc']) && preg_match('/SMN/', $row2['sdesc']) ){$requete = 'WHERE BRD = 1 OR DRG = 1 OR SMN = 1';}
else if ( preg_match('/WAR/', $row2['sdesc']) && preg_match('/WHM/', $row2['sdesc']) && preg_match('/SMN/', $row2['sdesc']) ){$requete = 'WHERE WAR = 1 OR WHM = 1 OR SMN = 1';}
else if ( preg_match('/WAR/', $row2['sdesc']) && preg_match('/BLM/', $row2['sdesc']) && preg_match('/WHM/', $row2['sdesc']) ){$requete = 'WHERE WAR = 1 OR BLM = 1 OR WHM = 1';}
else if ( preg_match('/WAR/', $row2['sdesc']) && preg_match('/BLM/', $row2['sdesc']) && preg_match('/SMN/', $row2['sdesc']) ){$requete = 'WHERE WAR = 1 OR BLM = 1 OR SMN = 1';}
else if ( preg_match('/WAR/', $row2['sdesc']) && preg_match('/DRG/', $row2['sdesc']) && preg_match('/BLM/', $row2['sdesc']) ){$requete = 'WHERE WAR = 1 OR DRG = 1 OR BLM = 1';}
else if ( preg_match('/WAR/', $row2['sdesc']) && preg_match('/DRG/', $row2['sdesc']) && preg_match('/WHM/', $row2['sdesc']) ){$requete = 'WHERE WAR = 1 OR DRG = 1 OR WHM = 1';}
else if ( preg_match('/WAR/', $row2['sdesc']) && preg_match('/DRG/', $row2['sdesc']) && preg_match('/SMN/', $row2['sdesc']) ){$requete = 'WHERE WAR = 1 OR DRG = 1 OR SMN = 1';}
else if ( preg_match('/WAR/', $row2['sdesc']) && preg_match('/BRD/', $row2['sdesc']) && preg_match('/DRG/', $row2['sdesc']) ){$requete = 'WHERE WAR = 1 OR BRD = 1 OR DRG = 1';}
else if ( preg_match('/WAR/', $row2['sdesc']) && preg_match('/BRD/', $row2['sdesc']) && preg_match('/BLM/', $row2['sdesc']) ){$requete = 'WHERE WAR = 1 OR BRD = 1 OR BLM = 1';}
else if ( preg_match('/WAR/', $row2['sdesc']) && preg_match('/BRD/', $row2['sdesc']) && preg_match('/WHM/', $row2['sdesc']) ){$requete = 'WHERE WAR = 1 OR BRD = 1 OR WHM = 1';}
else if ( preg_match('/WAR/', $row2['sdesc']) && preg_match('/BRD/', $row2['sdesc']) && preg_match('/SMN/', $row2['sdesc']) ){$requete = 'WHERE WAR = 1 OR BRD = 1 OR SMN = 1';}
else if ( preg_match('/PLD/', $row2['sdesc']) && preg_match('/WHM/', $row2['sdesc']) && preg_match('/SMN/', $row2['sdesc']) ){$requete = 'WHERE PLD = 1 OR WHM = 1 OR SMN = 1';}
else if ( preg_match('/PLD/', $row2['sdesc']) && preg_match('/BLM/', $row2['sdesc']) && preg_match('/WHM/', $row2['sdesc']) ){$requete = 'WHERE PLD = 1 OR BLM = 1 OR WHM = 1';}
else if ( preg_match('/PLD/', $row2['sdesc']) && preg_match('/BLM/', $row2['sdesc']) && preg_match('/SMN/', $row2['sdesc']) ){$requete = 'WHERE PLD = 1 OR BLM = 1 OR SMN = 1';}
else if ( preg_match('/PLD/', $row2['sdesc']) && preg_match('/DRG/', $row2['sdesc']) && preg_match('/BLM/', $row2['sdesc']) ){$requete = 'WHERE PLD = 1 OR DRG = 1 OR BLM = 1';}
else if ( preg_match('/PLD/', $row2['sdesc']) && preg_match('/DRG/', $row2['sdesc']) && preg_match('/WHM/', $row2['sdesc']) ){$requete = 'WHERE PLD = 1 OR DRG = 1 OR WHM = 1';}
else if ( preg_match('/PLD/', $row2['sdesc']) && preg_match('/DRG/', $row2['sdesc']) && preg_match('/SMN/', $row2['sdesc']) ){$requete = 'WHERE PLD = 1 OR DRG = 1 OR SMN = 1';}
else if ( preg_match('/PLD/', $row2['sdesc']) && preg_match('/BRD/', $row2['sdesc']) && preg_match('/DRG/', $row2['sdesc']) ){$requete = 'WHERE PLD = 1 OR BRD = 1 OR DRG = 1';}
else if ( preg_match('/PLD/', $row2['sdesc']) && preg_match('/BRD/', $row2['sdesc']) && preg_match('/BLM/', $row2['sdesc']) ){$requete = 'WHERE PLD = 1 OR BRD = 1 OR BLM = 1';}
else if ( preg_match('/PLD/', $row2['sdesc']) && preg_match('/BRD/', $row2['sdesc']) && preg_match('/WHM/', $row2['sdesc']) ){$requete = 'WHERE PLD = 1 OR BRD = 1 OR WHM = 1';}
else if ( preg_match('/PLD/', $row2['sdesc']) && preg_match('/BRD/', $row2['sdesc']) && preg_match('/SMN/', $row2['sdesc']) ){$requete = 'WHERE PLD = 1 OR BRD = 1 OR SMN = 1';}
else if ( preg_match('/PLD/', $row2['sdesc']) && preg_match('/WAR/', $row2['sdesc']) && preg_match('/BRD/', $row2['sdesc']) ){$requete = 'WHERE PLD = 1 OR WAR = 1 OR BRD = 1';}
else if ( preg_match('/PLD/', $row2['sdesc']) && preg_match('/WAR/', $row2['sdesc']) && preg_match('/DRG/', $row2['sdesc']) ){$requete = 'WHERE PLD = 1 OR WAR = 1 OR DRG = 1';}
else if ( preg_match('/PLD/', $row2['sdesc']) && preg_match('/WAR/', $row2['sdesc']) && preg_match('/BLM/', $row2['sdesc']) ){$requete = 'WHERE PLD = 1 OR WAR = 1 OR BLM = 1';}
else if ( preg_match('/PLD/', $row2['sdesc']) && preg_match('/WAR/', $row2['sdesc']) && preg_match('/WHM/', $row2['sdesc']) ){$requete = 'WHERE PLD = 1 OR WAR = 1 OR WHM = 1';}
else if ( preg_match('/PLD/', $row2['sdesc']) && preg_match('/WAR/', $row2['sdesc']) && preg_match('/SMN/', $row2['sdesc']) ){$requete = 'WHERE PLD = 1 OR WAR = 1 OR SMN = 1';}
else if ( preg_match('/MNK/', $row2['sdesc']) && preg_match('/WHM/', $row2['sdesc']) && preg_match('/SMN/', $row2['sdesc']) ){$requete = 'WHERE MNK = 1 OR WHM = 1 OR SMN = 1';}
else if ( preg_match('/MNK/', $row2['sdesc']) && preg_match('/BLM/', $row2['sdesc']) && preg_match('/WHM/', $row2['sdesc']) ){$requete = 'WHERE MNK = 1 OR BLM = 1 OR WHM = 1';}
else if ( preg_match('/MNK/', $row2['sdesc']) && preg_match('/BLM/', $row2['sdesc']) && preg_match('/SMN/', $row2['sdesc']) ){$requete = 'WHERE MNK = 1 OR BLM = 1 OR SMN = 1';}
else if ( preg_match('/MNK/', $row2['sdesc']) && preg_match('/DRG/', $row2['sdesc']) && preg_match('/BLM/', $row2['sdesc']) ){$requete = 'WHERE MNK = 1 OR DRG = 1 OR BLM = 1';}
else if ( preg_match('/MNK/', $row2['sdesc']) && preg_match('/DRG/', $row2['sdesc']) && preg_match('/WHM/', $row2['sdesc']) ){$requete = 'WHERE MNK = 1 OR DRG = 1 OR WHM = 1';}
else if ( preg_match('/MNK/', $row2['sdesc']) && preg_match('/DRG/', $row2['sdesc']) && preg_match('/SMN/', $row2['sdesc']) ){$requete = 'WHERE MNK = 1 OR DRG = 1 OR SMN = 1';}
else if ( preg_match('/MNK/', $row2['sdesc']) && preg_match('/BRD/', $row2['sdesc']) && preg_match('/DRG/', $row2['sdesc']) ){$requete = 'WHERE MNK = 1 OR BRD = 1 OR DRG = 1';}
else if ( preg_match('/MNK/', $row2['sdesc']) && preg_match('/BRD/', $row2['sdesc']) && preg_match('/BLM/', $row2['sdesc']) ){$requete = 'WHERE MNK = 1 OR BRD = 1 OR BLM = 1';}
else if ( preg_match('/MNK/', $row2['sdesc']) && preg_match('/BRD/', $row2['sdesc']) && preg_match('/WHM/', $row2['sdesc']) ){$requete = 'WHERE MNK = 1 OR BRD = 1 OR WHM = 1';}
else if ( preg_match('/MNK/', $row2['sdesc']) && preg_match('/BRD/', $row2['sdesc']) && preg_match('/SMN/', $row2['sdesc']) ){$requete = 'WHERE MNK = 1 OR BRD = 1 OR SMN = 1';}
else if ( preg_match('/MNK/', $row2['sdesc']) && preg_match('/WAR/', $row2['sdesc']) && preg_match('/BRD/', $row2['sdesc']) ){$requete = 'WHERE MNK = 1 OR WAR = 1 OR BRD = 1';}
else if ( preg_match('/MNK/', $row2['sdesc']) && preg_match('/WAR/', $row2['sdesc']) && preg_match('/DRG/', $row2['sdesc']) ){$requete = 'WHERE MNK = 1 OR WAR = 1 OR DRG = 1';}
else if ( preg_match('/MNK/', $row2['sdesc']) && preg_match('/WAR/', $row2['sdesc']) && preg_match('/BLM/', $row2['sdesc']) ){$requete = 'WHERE MNK = 1 OR WAR = 1 OR BLM = 1';}
else if ( preg_match('/MNK/', $row2['sdesc']) && preg_match('/WAR/', $row2['sdesc']) && preg_match('/WHM/', $row2['sdesc']) ){$requete = 'WHERE MNK = 1 OR WAR = 1 OR WHM = 1';}
else if ( preg_match('/MNK/', $row2['sdesc']) && preg_match('/WAR/', $row2['sdesc']) && preg_match('/SMN/', $row2['sdesc']) ){$requete = 'WHERE MNK = 1 OR WAR = 1 OR SMN = 1';}
else if ( preg_match('/MNK/', $row2['sdesc']) && preg_match('/PLD/', $row2['sdesc']) && preg_match('/WAR/', $row2['sdesc']) ){$requete = 'WHERE MNK = 1 OR PLD = 1 OR WAR = 1';}
else if ( preg_match('/MNK/', $row2['sdesc']) && preg_match('/PLD/', $row2['sdesc']) && preg_match('/BRD/', $row2['sdesc']) ){$requete = 'WHERE MNK = 1 OR PLD = 1 OR BRD = 1';}
else if ( preg_match('/MNK/', $row2['sdesc']) && preg_match('/PLD/', $row2['sdesc']) && preg_match('/DRG/', $row2['sdesc']) ){$requete = 'WHERE MNK = 1 OR PLD = 1 OR DRG = 1';}
else if ( preg_match('/MNK/', $row2['sdesc']) && preg_match('/PLD/', $row2['sdesc']) && preg_match('/BLM/', $row2['sdesc']) ){$requete = 'WHERE MNK = 1 OR PLD = 1 OR BLM = 1';}
else if ( preg_match('/MNK/', $row2['sdesc']) && preg_match('/PLD/', $row2['sdesc']) && preg_match('/WHM/', $row2['sdesc']) ){$requete = 'WHERE MNK = 1 OR PLD = 1 OR WHM = 1';}
else if ( preg_match('/MNK/', $row2['sdesc']) && preg_match('/PLD/', $row2['sdesc']) && preg_match('/SMN/', $row2['sdesc']) ){$requete = 'WHERE MNK = 1 OR PLD = 1 OR SMN = 1';}[/php]
Le problème c'est que ça devient très compliqué et je suis sur que j'ai oublié des possibilités (sachant que je n'en suis qu'a 3 mots possibles... je n'ose pas imaginer la suite, ou l'ajout futur d'un mot :oops: ). Donc voila je voudrais savoir s'il était possible d'avoir un équivalent "automatique" pour gérer toutes les possibilités (sans tenir compte de l'ordre des mots) afin de faire varier ma requête en fonction de la présence de ces mots.
Merci à tous les intervenants :)