Help : (str_replace) et (split ou explode) ne marchent pas ! ?
slmnsnts
Messages postés25Date d'inscriptionsamedi 10 juillet 2004StatutMembreDernière intervention31 août 2007
-
15 oct. 2004 à 11:48
juki_webmaster
Messages postés947Date d'inscriptionmercredi 19 novembre 2003StatutMembreDernière intervention 5 avril 2008
-
25 oct. 2004 à 13:43
Salut tt le monde !
G ajouté une page de recherche dans mon forum et ca marche tres bien ... le seul prob C lorsque qu'on cherche des mots avec plusieur espace (exp : "php upload" )
voici le code source :
$le_mot=strtoupper($_POST['Mots']); //le mot a rechercher
$le_mot=str_replace(" ", " ", $le_mot);// remplacer les double espace par un seul comme ca jaurai qu'un seul espace entre chaque mot et G tester avec un echo : ca marche ! mais apres :
$les_mots = split(" ", $le_mot); // je decoupe les mots mais il ne prend pas en considairation le str_replace !
//tt ceci pour arriver a :
$taille=count($les_mots);
for($i=0;$i<$taille;$i++)
{
$sql=$sql."(Sujet like ucase('%".$les_mots[$i]."%'))";
if ($i!=$taille-1) {$sql=$sql." and ";}
}
juki_webmaster
Messages postés947Date d'inscriptionmercredi 19 novembre 2003StatutMembreDernière intervention 5 avril 20083 15 oct. 2004 à 21:38
Salut slmnsnts,
Utilise plutôt explode() pour effectuer des recherches en mode logique OR.
Deplus tu va être confronter à pas mal de 'faille' d'affichage dût aux caractéres unique non metacaractéres.
Matzury
Messages postés5Date d'inscriptiondimanche 11 juillet 2004StatutMembreDernière intervention25 octobre 2004 24 oct. 2004 à 23:35
comment a tu fait ? Parce que moi j'ai un probleme la fonction explode ne semble pas fonctionner (je suis chez free.)
Je cherche a extraire le nom d'un fichier a partir d'un chemin :
c:\dossier\fichier.ext
je essayer les 2 manieres suivante :
$lechemin= $lechemin."\fin";
$tab=explode('\\',$lechemin);
$i=0;
while ($tab[$i]!="fin")
$i++;
$nomfic=$tab[$i-1];
Matzury
Messages postés5Date d'inscriptiondimanche 11 juillet 2004StatutMembreDernière intervention25 octobre 2004 25 oct. 2004 à 00:04
Merci mais j'ai resolu le probleme apparement c simplement ke j'avai oublier de faire un stripslashes avant d'utiliser mon chemin !
Que de temps passer a chercher pour une si petite erreur mais je vais tout de meme essayer ta fonction pour voir !
Merci beaucoup.
Matzury
Messages postés5Date d'inscriptiondimanche 11 juillet 2004StatutMembreDernière intervention25 octobre 2004 25 oct. 2004 à 00:08
Heu tien je vient te tester la fonction basename mais elle ne fonctionne pas dans mon cas car le chemin est un chemin windows ( avec des \ et non des /) donc ca ne semble pas etre bon ...
Matzury
Messages postés5Date d'inscriptiondimanche 11 juillet 2004StatutMembreDernière intervention25 octobre 2004 25 oct. 2004 à 00:13
Bon j'ai trouver d'ou venai mon probleme ce n'etait pas mon stripslashes ! Mais simplement mon afectation d'une case su tableau a ma variable nom de fichier.
c'est $nomfic=$tab[$i-1]; qui ne fonctionne pas !
allez savoir pourquoi ?
Matzury
Messages postés5Date d'inscriptiondimanche 11 juillet 2004StatutMembreDernière intervention25 octobre 2004 25 oct. 2004 à 00:16
ralala je spam...
Bon excuser moi pour le bordel que j'ai foutu pour une simple inversion de lettre!
Et oui vous lisez en ce moment l'homme le plus bete du monde qui a chercher pendant 2 heure pour trouver simplement qu'il avait inverser 2 lettre dans le nom de sa variable...
Merci encore pour tout !
++
juki_webmaster
Messages postés947Date d'inscriptionmercredi 19 novembre 2003StatutMembreDernière intervention 5 avril 20083 25 oct. 2004 à 13:43
Non ne t'excuse pas, j'ai reçu 10 nouveaux emails pour ce sujet sinon sa rox.
Tien je vous ajoute encore un email ;)
slmnsnts pense à valider les bonnes réponse pour bien ordonner les visiteurs desereux de savoir la réponse.