Bonjour
Les informations comme le symbole à remplacer, le nom du fichier l'attribut ALT de l'image sont contenu dans une table mysql pour pouvoir ajouter on retirer dans le futur des smileys facilement.
Seulement je n'arrive pas à écrire le code correct pour que ça fonctionne.
J'ai essayé deux solutions mais aucune ne fonctionne:
la première: dans le champs, symbole, j'ai mis uniquement les symbole et j'ai essayé ceci:
Pa bon du tout ça m'affiche un superbe message d'erreur.Code:
1
2
3
4
5
6
7 $req = mysql_query("SELECT * FROM smileys"); while ($donnees = mysql_fetch_array($req)) { $texte=preg_replace('! ' . $donnees['symbole']. '!i', ' <img src="' . $donnees['nonfichier'] . '" alt="' . $donnees['alt'] . '" />', $texte); }
Du coup j'ai essayé une autre solutions: mettre le motif directement dans le champ symbole ce qui donne ceci
Là j'ai plus de message d'erreur, mais pas de remplacement non plus.Code:
1
2
3
4
5
6 $req = mysql_query("SELECT * FROM smileys"); while ($donnees = mysql_fetch_assoc($req)) { $texte= preg_replace($donnees['symbole'],'<img src="1.gif" />',$texte); }
Voici par exemple un motif du champs symbole: '!:content:!isU'
Sans passer par la BDD, en mettant directement : $texte = preg_replace('!:content:!i','<img src="2.gif" />',$texte); ça fonctionne, du coups cela vient peut être de ma requête qui est mal écrite et je ne suis peut être pas sur le bon forum. Si c'est le cas je m'en excuse.