Fonction définition : l'ameliorer... [PHP Hard] - Programmation
MarshPosté le 04-04-2002 à 14:56:29
C'est compliqué je vous previens :) !
Bon j'ai une fonction qui teste les mots d'un texte et affiche (si le mot est présent dans la BDD evidemment) une popup "overlib" (pour ceux qui ne connaissent pas www.bosrup.com) avec la definition et une image associée...
Mon problème : je voudrais qu'en fait la fonction teste chaque mot du texte sous ses deux formes (au singulier et au pluriel).
Comme le pluriel n'est pas forcement l'ajout d'un "s" j'ai mis dans ma table tous les mots au singulier et au pluriel mais je ne sais pas comme faire tester a cette fontion les deux types de mots... Pouvez vous m'aider ? Je patauge ! (nb : jusque là j'ai reussi a adapter cette fonction à mes besoins mais là je rame)
LA FONCTION :
<% function lienversglossaire($ligne) {
//connection à la base include ("../../connection/connection.php" );
//on sélectionne les mots du glossaire $query = "select mot, definition, photodef from definitions"; $mysql_result = mysql_query($query);
//on les met dans un tableau $indice=0; while($row = mysql_fetch_row($mysql_result)) { $glossaire[$indice]=$row[0]; $idglossaire[$indice]=$row[1]; $idphotoglossaire[$indice]=$row[2]; $indice++; } $c=0;
//on remplace chaque mot par un lien while($c<$indice) { $ligne=liensurmot($ligne, $glossaire[$c], $idglossaire[$c], $idphotoglossaire[$c]); $c++; } return $ligne; }
Marsh Posté le 04-04-2002 à 14:56:29
C'est compliqué je vous previens :) !
Bon j'ai une fonction qui teste les mots d'un texte et affiche (si le mot est présent dans la BDD evidemment) une popup "overlib" (pour ceux qui ne connaissent pas www.bosrup.com) avec la definition et une image associée...
Mon problème : je voudrais qu'en fait la fonction teste chaque mot du texte sous ses deux formes (au singulier et au pluriel).
Comme le pluriel n'est pas forcement l'ajout d'un "s" j'ai mis dans ma table tous les mots au singulier et au pluriel mais je ne sais pas comme faire tester a cette fontion les deux types de mots... Pouvez vous m'aider ? Je patauge ! (nb : jusque là j'ai reussi a adapter cette fonction à mes besoins mais là je rame)
LA FONCTION :
<%
function lienversglossaire($ligne)
{
//connection à la base
include ("../../connection/connection.php" );
//on sélectionne les mots du glossaire
$query = "select mot, definition, photodef from definitions";
$mysql_result = mysql_query($query);
//on les met dans un tableau
$indice=0;
while($row = mysql_fetch_row($mysql_result))
{
$glossaire[$indice]=$row[0];
$idglossaire[$indice]=$row[1];
$idphotoglossaire[$indice]=$row[2];
$indice++;
}
$c=0;
//on remplace chaque mot par un lien
while($c<$indice)
{
$ligne=liensurmot($ligne, $glossaire[$c], $idglossaire[$c], $idphotoglossaire[$c]);
$c++;
}
return $ligne;
}
function liensurmot($ligne, $mot, $idmot, $photomot)
{
if ($mot<>"" ) {
$direction = "<a style=\"color: #000066; font-family: Arial; font-size: 10 pt; text-decoration: underline\" href=\"javascript:void(0);\" onmouseover=\"return overlib('<IMG SRC=\'../../images/glossaire/$photomot\' align=\'left\'> $idmot', CAPTION, 'Définition de : $mot');\" onmouseout=\"return nd();\">";
$ligne = preg_replace("/([>\' (])($mot)([<, \.)])/i", "\\1$direction\\2</a>\\3", $ligne);;
}
return $ligne;
}
%>
---------------
[:idee] Tu t'ennuies ? www.pagepardefaut.com : jeux online, anims flash et sites insolites...