oui je comprend . j'ai essayer avec la fonction str_replace mais je suis pas certain de savoir comment l'utiliser, j'ai essayer plusieurs manières d'après les explications trouvées sur le web ???As-tu essayé d'utiliser une fonction de remplacement avant d'afficher la requête ?
Remplacer par exemple le mot recherché par <span class="blabla">mot</span> ? Ce qui fait qu'à la sortie tu auras tous les mots recherchés qui seront d'un autre style.
Juste une tite astuce, il y a sans doute mieux
<?
$keywords = $_POST["recherche"];
$sql = "SELECT description.code, description.nom, description.nomfr, description.genre, description.description, description.video, loan.loanto, loan.date_out, loan.date_in
FROM loan RIGHT JOIN description
ON description.code=loan.code
WHERE description.code LIKE '%".$keywords."%' OR
description.nom LIKE '%".$keywords."%' OR
description.nomfr LIKE '%".$keywords."%' OR
loan.loanto LIKE '%".$keywords."%'
ORDER BY ".$order."";
$resultat = mysql_query($sql);
while ($rows=mysql_fetch_array($resultat))
{
?>
<tr class="resultat">
<td class="image"> <? if ($showimg=="oui")
{
$image = (file_exists("thumb/".$rows['code'] ."_t.jpg")) ? "thumb/".$rows['code'] ."_t.jpg" : "thumb/defaut.jpg";
$b_image = (file_exists("thumb_b/b_".$rows['code'] .".jpg")) ? "thumb_b/b_".$rows['code'] .".jpg" : "thumb/defaut.jpg";?>
<A HREF="#" onClick="window.open('<? echo $b_image; ?>','_blank',' width=410, height=500');return(false)"><?echo('<img src="'.$image.'" border="0" >');?></a>
<? }?>
</td>
<td class="code"><? echo $rows['code']; ?></td>
<td class="titre"><b><a href="infodvd.php?code=<? echo $rows['code']; ?>"><? echo $rows['nom']; if ($rows['video']== true){?><a href="infodvd.php?code=<? echo $rows['code']; ?>#video"><img src="images/video.jpg" border="0" height="20"></a><?}?><br><div class="description"><b><? echo $rows['nomfr']; ?></b></div></a></b>
........//
</td>
</tr>
<? } ?>
$chaine_sortie = ereg_replace($mot_recherche, $mot_de_remplacement, $chaine);
Donc pour toutes tes sorties tu peux appliquer cette étape.Oui ca je le comprend bien, mais comment je l'incorpore à mon code, où le mettre et d'après mes donnée de code comment l'inclure. c'est ca que je ne comprend pas.En fait en gros c'est un peu ce contexte :
Donc pour toutes tes sorties tu peux appliquer cette étape.$chaine_sortie = ereg_replace($mot_recherche, $mot_de_remplacement, $chaine);
Voici tout mon codeQu'est-ce que tu affiches exactement dans ton résultat ?
Ce sont les champs code, nom...etc ?
<?
// SÉLECTION RECHERCHE PAR MOTS CLEFS //
if(isset($_POST['rechercher'])) // POST RECHERCHER
{
$afficher1 = 1;
$showimg = $_POST['showimg'];
$showinfo = $_POST['showinfo'];
$order = $_POST['order'];
$keywords = $_POST["recherche"];
$sql = "SELECT description.code, description.nom, description.nomfr, description.genre, description.description, description.video, loan.loanto, loan.date_out, loan.date_in
FROM loan RIGHT JOIN description
ON description.code=loan.code
WHERE description.code LIKE '%".$keywords."%' OR
description.nom LIKE '%".$keywords."%' OR
description.nomfr LIKE '%".$keywords."%' OR
loan.loanto LIKE '%".$keywords."%'
ORDER BY ".$order."";
$resultat = mysql_query($sql);
} // IF RECHERCHER
else {}
if($afficher1 == 1)
{ ?>
<tr class="onglet">
<td class="dvd-image"></td>
<td class="dvd-code">CODE</td>
<td class="dvd-titre">TITRE</td>
<td class="dvd-genre">GENRE</td>
<td class="dvd-loan">LOUER À</td>
</tr>
<span class="recherche">the</span>
<?
}
if (mysql_num_rows($resultat) >= 1)
while ($rows=mysql_fetch_array($resultat))
{
?>
<tr class="resultat">
<td class="image"> <? if ($showimg=="oui")
{
$image = (file_exists("thumb/".$rows['code'] ."_t.jpg")) ? "thumb/".$rows['code'] ."_t.jpg" : "thumb/defaut.jpg";
$b_image = (file_exists("thumb_b/b_".$rows['code'] .".jpg")) ? "thumb_b/b_".$rows['code'] .".jpg" : "thumb/defaut.jpg";?>
<A HREF="#" onClick="window.open('<? echo $b_image; ?>','_blank',' width=410, height=500');return(false)"><?echo('<img src="'.$image.'" border="0" >');?></a>
<? }?>
</td>
<td class="code"><? echo $rows['code']; ?></td>
<td class="titre"><b><a href="infodvd.php?code=<? echo $rows['code']; ?>"><? echo $rows['nom']; if ($rows['video']== true){?><a href="infodvd.php?code=<? echo $rows['code']; ?>#video"><img src="images/video.jpg" border="0" height="20"></a><?}?><br><div class="description"><b><? echo $rows['nomfr']; ?></b></div></a></b>
<? if ($showinfo=="oui")
{ ?>
<div class="description"><? echo $rows['description']; ?></div>
<? } ?>
</td>
<td class="genre"><? echo $rows['genre']; ?></td>
<td class="loan"><? if ($rows['loanto']==false)
{
echo '<img src="images/yes.jpg" border="0" width="18" height="16"> <br>Disponible</a>';
}
elseif ($rows['loanto']==true)
{
echo '<img src="images/no.png" border="0"> <br>Non Disponible</a>';
}
?></td>
</tr>
<? }
$chaine_sortie = ereg_replace($mot_recherche, $mot_de_remplacement, $chaine);
n'y est pas, je l'ai essayer à plusieur place en modifiant les variable, mais ca ne fonctionnait pas,<?
while ($rows1=mysql_fetch_array($resultat))
$rows = ereg_replace($keywords, "<font color='#ff0000'>$keywords</font>", $rows1);
{
?>
J'ai mis juste la partie pour allèger la page d'ici<?
$resultat1 = ereg_replace($keywords, "<font color='#ff0000'>$keywords</font>", $resultat);
while ($rows=mysql_fetch_array($resultat1))
{
?>
Là, plus de résultat, comme si la bdd était vide, mais la page s'affiche, il n'y a pas d'erreur d'affiché"<font color='#ff0000'>$keywords</font>", n'est pas correct"<font color='#ff0000'>".$keywords."s</font>", est mieux
Juste une petite précision2.n'est pas correct"<font color='#ff0000'>$keywords</font>",est mieux"<font color='#ff0000'>".$keywords."s</font>",
"<font color='#ff0000'>$keywords</font>" est correct, sera correctement interprété par le parseur PHP mais, effectivement, je trouve qu'il est mieux d'écrire "<font color='#ff0000'>".$keywords."s</font>"
"<font color='#ff0000'>$keywords</font>"fonctionne, que c'est correct."<font color='#ff0000'>".$keywords."</font>"
Sauf que la balise <font> est completly deprecated...
Il y a vraiment une différence significative de temps d'exécution entre les deux ? (qui ne s'exprime pas en micro secondesC'est bien là ce que je souhaitais dire (mais mal formulé). Quand on voit la différence de rapidité, on comprend quelle méthode est la meilleure