Générer une condition if [PHP] - Programmation
Marsh Posté le 27-06-2002 à 16:04:27
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! |
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
Marsh Posté le 27-06-2002 à 16:05:42
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! |
Moi je pige pas
Marsh Posté le 27-06-2002 à 19:05:08
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!
Marsh Posté le 27-06-2002 à 19:35:21
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?
Marsh Posté le 27-06-2002 à 19:46:23
tu cherches à compliquer il me semble...
Code :
|
Marsh Posté le 27-06-2002 à 19:52:29
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.
Voilà la direction à prendre que je te conseilles.
Si tu utilises MySQL: http://dev.nexen.net/docs/mysql/an [...] tching.php
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
Marsh Posté le 27-06-2002 à 20:01:17
ethernal a écrit a écrit : tu cherches à compliquer il me semble...
|
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...)
Marsh Posté le 27-06-2002 à 21:02:16
eval() ca te va
http://www.php.net/manual/en/function.eval.php
Marsh Posté le 27-06-2002 à 21:44:53
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 :
|
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 ){
Marsh Posté le 27-06-2002 à 21:47:48
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?
Marsh Posté le 27-06-2002 à 21:56:33
si je me souviens bien tu fais un unset($tab[x]);
Marsh Posté le 27-06-2002 à 14:54:27
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!