Version complète: sur le forum Webmaster Hub : Des liens dynamiques
Webmaster Hub > Création et exploitation de Sites Internet > Les langages du Net > PHP
xpatval
Bonjour,

j'ai une table texte, un champ texte, au format text. (normal, c'est du texte IMSTP6.gif )
Après requête, j'affiche le texte.

Maintenant, dans le texte, certains mots servent de liens.

La première méthode est d'inclure les bonnes balises (<a>) là où il faut.

Je souhaiterais procéder autrement, à savoir, générer dynamiquement la balise lien. (le href pouvant lui aussi être dynamique).

Quelles possibilités ais-je pour réaliser cela ?
Inclure un tag spécial qui, lorsqu'il est rencontré (parse du texte ?), appelle une fonction de génération de balise <a> ?

Y-a-t-il une autre méthode ?

Merci de vos réponses,

xpatval
bigornot
Non, il faut le faire à l'artisanale :

CODE
<?php
$q = mysql_query($sql);
$f = mysql_fetch_array($q);
$chaine = $f['tonchamptxt'];
$tonmot = 'ton mot';
$ch1 = "<a href='lapage.php?mot=";
echo $tonmot;
echo "'>$tonmot</a>";
$chaine = ereg_replace($tonmot,$ch1,$chaine);
?>



Tu peux aussi changer tous les mots que tu trouve dans une base de donnée :

CODE
<?php
$q = mysql_query($sql); // pour ces deux requetes,
$f = mysql_fetch_array($q); //voir plus haut :lol:
$q2 = mysql_query($sql2);
//sql2 contient une requete qui te sort tous les
//mots à mettre en lien
while($f2 = mysql_fetch_array($q2)){
$chaine = $f['tonchamptxt'];
//$f a été définie sur le code que tu as
//plus haut...
$tonmot = $f2['tonmot'];
$ch1 = "<a href='lapage.php?mot=";
echo $tonmot;
echo "'>$tonmot</a>";
$chaine = ereg_replace($tonmot,$ch1,$chaine);
}
?>
xpatval
Autrement dit, avec cette méthode:
CODE
<?php
$q = mysql_query($sql);
$f = mysql_fetch_array($q);
$chaine = $f['tonchamptxt'];
$tonmot = 'ton mot';
$ch1 = "<a href='lapage.php?mot=";
echo $tonmot;
echo "'>$tonmot</a>";
$chaine = ereg_replace($tonmot,$ch1,$chaine);
?>
, je suis obligé de définir un $tonmot par autant de mots ayant besoin du traitement ?
bigornot
Oui

Mais pas pour l'autre
xpatval
Ouaip, donc, création d'une table de mots utilisés en liens...

je voyais bien le parse, pourtant...

M'enfin !

merci.

xpatval
Ceci est une version "bas débit" de notre forum. Pour voir la version complète avec plus d'information, la mise en page et les images, veuillez cliquer ici.