[Résolu] Probleme boucle coloration

Probleme boucle coloration [Résolu] - PHP - Programmation

Marsh Posté le 04-12-2007 à 10:22:43    

Bonjour à tous,
 
Je suis en train de créer une boucle while qui colore les termes, saisis dans un moteur de recherche, dans les résultats.
Le soucis est qu'à chaque ca ne colore que le dernier terme et je ne vois pas pourquoi ca ne colore pas les autres.
 
Voici mon code ca sera plus clair :
 

Code :
  1. $saisie = trim($saisie); //on supprime les blancs au debut et a la fin de la saisie
  2.      $tab=split("( | )",$saisie); // On eclate la phrase dans un tableau
  3.      $nb=count($tab);// On compte le nombre d'entrées dans le tableau
  4.      // Boucle de création de requete
  5.      $n=0;
  6.      while($n<$nb)
  7.      {
  8.       $tabTemp['Des']=eregi_replace($tab[$n], "<font color='red'>".$tab[$n]."</font>", $ligneResult['desc']);
  9.       $n+=1;
  10.      }


 
Merci d'avance à celui qui pourra m'éclairer   :jap:


Message édité par bernardminet le 05-12-2007 à 14:31:22
Reply

Marsh Posté le 04-12-2007 à 10:22:43   

Reply

Marsh Posté le 04-12-2007 à 11:37:02    

parce que $tabTemp['Des'] est ré-écrit à chaque fois.
ta ligne 11 doit ressembler à :
$ligneResult['desc']=eregi_replace($tab[$n], "<font color='red'>".$tab[$n]."</font>", $ligneResult['desc']);
 
Je ne commente pas le reste mais bon...

Reply

Marsh Posté le 04-12-2007 à 11:50:39    

Merci beaucoup j ai changé mon code en :
 

Code :
  1. saisie = trim($saisie); //on supprime les blancs au debut et a la fin de la saisie
  2.      $tab=split("( |&nbsp;)",$saisie); // On eclate la phrase dans un tableau
  3.      $nb=count($tab);// On compte le nombre d'entrées dans le tableau
  4.      $description=$ligneResult['des'];
  5.      // Boucle de création de requete
  6.      $n=0;
  7.      while($n<$nb)
  8.      {
  9.       $description=eregi_replace($tab[$n], "<font color='red'>".$tab[$n]."</font>", $description);
  10.       $n+=1;
  11.      }
  12.      $tabTemp['Des']=$description;


 
Tu veux dire quoi par "Je ne commente pas le reste mais bon..." ?

Reply

Marsh Posté le 04-12-2007 à 12:13:58    

$description=$ligneResult['des'];
$description=eregi_replace($tab[$n], "<font color='red'>".$tab[$n]."</font>", $description);
$tabTemp['Des']=$description;
 
-> Il y a une raison quelconque pour laquelle tu passes par 3 variables différentes ?
 
 
$nb=count($tab);
$n=0;
while($n<$nb)
$n+=1;
 
-> foreach()
 
puis si ton mot dans $desciption est dans une blise img, il se passe quoi ?

Reply

Marsh Posté le 04-12-2007 à 12:23:40    

Je travaille sur des listes LDAP donc il n'y aura pas de problème de balise image.
 
Sinon oui j'aurais besoin de ces variables à cause d'autres fonctionnalités.
 
Merci de ton aide en tout cas
 

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed