ok merci...
sinon une autre question...
est-ce qu'il est possible de SUPPRIMER d'un array une entrée qui remplirait une condition? Quelle commande?
ethernal
toto21 a écrit a écrit :
Ca d'accord, mais je ne voit pas du tout où est-ce que tu exclue ls mots auquel je fais surtout allusion (une, est, des, donc...)
là :
Code :
if(strlen($tab[$i]>2){
$query.= " OR mot='". $tab[$i] . "'";
}
c'est la condition qui dit s'il faut prendre en compte le mot tapé par l'utilisateur ou pas.
tu peux la changer en if ( !preg_match($array_des_mots_a_exclure, $tab[$i] && strlen($tab[i])>2 ){
$query="select ... from ... WHERE mot='". $tab[0] ."'";
for ($i=1, $max= count($tab); $i<$max; $i++){
if(strlen($tab[$i]>2){
$query.= " OR mot='". $tab[$i] . "'";
}
}
$res= mysql_query($query,$conexion);
}
else{
echo "mots incorrects";
}
Ca d'accord, mais je ne voit pas du tout où est-ce que tu exclue ls mots auquel je fais surtout allusion (une, est, des, donc...)
hum hum
toto21 a écrit a écrit :
Alors je veux préciser ce que je veux faire...
J'ai un champ de saisie, dans lequel je tape une recherche...
J'éxecute ma recherche sur une base de données, mais avant ça, je voudrais exclure tout les mots infèrieurs à 2 lettres ainsi que tous les mots que j'aurais défini dans mon array (et que je pourrais donc modifier facilement). Ces mots sont des mots du genre "une", "est", "des", "donc"...
C'est pour ça que je fais une instruction if !() que je voudrais générer en fonction de mon array... Une idée??????
D'autres propositions?
Je te conseilles de faire ça directement dans ta requete sql.
Pour les mots de 2 lettres max utilises les expressions régulières (REGEXP pour MySQL), pour la liste de mots utilises NOT LIKE, tu construit ta requete en parcourant ton array. Tous les 2 commes conditions dans ta requete.
Edit: Bah, e m'emmeles un put les pinceaux avec REGEXP et NOT LIKE... Utilises REGEXP pour le minimum de 2 caractères et ensuite mot!='...' comme l'a précisé ethernal au dessus.. Fais un petit mélange de nos 2 réponses, il semblerais que ethernal t'ai donné la solution pour trouver les mots contenu dans ton array, et que tu veux le contraire
ethernal
tu cherches à compliquer il me semble...
Code :
$tab= explode(' ',$var);
if (count($tab>0)){
$query="select ... from ... WHERE mot='". $tab[0] ."'";
for ($i=1, $max= count($tab); $i<$max; $i++){
if(strlen($tab[$i]>2){
$query.= " OR mot='". $tab[$i] . "'";
}
}
$res= mysql_query($query,$conexion);
}
else{
echo "mots incorrects";
}
Toto21
Alors je veux préciser ce que je veux faire...
J'ai un champ de saisie, dans lequel je tape une recherche...
J'éxecute ma recherche sur une base de données, mais avant ça, je voudrais exclure tout les mots infèrieurs à 2 lettres ainsi que tous les mots que j'aurais défini dans mon array (et que je pourrais donc modifier facilement). Ces mots sont des mots du genre "une", "est", "des", "donc"...
C'est pour ça que je fais une instruction if !() que je voudrais générer en fonction de mon array... Une idée??????
D'autres propositions?
Toto21
Cherchez po à savoir pourquoi je fais ça...
Je voudrais juste savoir comment faire un truc du genre :
if(xxxx)
et faire en sorte qu'à la place de xxx j'ai le contenu d'une variable $var par exemple...
C'est si compliqué que ça?
Merci!
J'arrive po!!!
J'arrive à me demerder pour qu'à partir d'un array, j'obtienne
une variable avec $cond = "OR mot = "variable array" OR mot = "variable arrey 2"...";
mais je voudrais après faire une condition avec
if (!(xxxxxxxxxxx))
en ayant les xxxx remplacés par le contenu de $ cond...
J'y arrive po! :cry:
:heink: Moi je pige pas
veryfree
toto21 a écrit a écrit :
J'arrive po!!!
J'arrive à me demerder pour qu'à partir d'un array, j'obtienne
une variable avec $cond = "OR mot = "variable array" OR mot = "variable arrey 2"...";
mais je voudrais après faire une condition avec
if (!(xxxxxxxxxxx))
en ayant les xxxx remplacés par le contenu de $ cond...
J'y arrive po! :cry:
si j ai bien compris que ce que tu ve faire
laisse moi te dire que c pas une bonne idée de + ca doit etre vachement chiant a maintenir...
de + une question bien posé est une question qui obtiens des reponses
Toto21
J'arrive po!!!
J'arrive à me demerder pour qu'à partir d'un array, j'obtienne
une variable avec $cond = "OR mot = "variable array" OR mot = "variable arrey 2"...";
mais je voudrais après faire une condition avec
if (!(xxxxxxxxxxx))
en ayant les xxxx remplacés par le contenu de $ cond...
J'y arrive po! :cry: