Bonjour,
dans le cadre d'un petit développement de MOD sans prétention, sur le transfert de corps de messages par mail, j'ai un souci avec la transformation des smileys en images sue le message mail.
En fait, il envoit des smileys "croix rouge"

, et comme url de ces derniers il y , par exemple le fichier reçu, exporté de ma messagerie au format html donne :
<IMG title=beer.gif alt=beer.gif src="./images/smileys/beer.gif" border=0>
au lieu d'avoir :
<IMG title=beer.gif alt=beer.gif src="http://www.monsite/fsb/images/smileys/beer.gif" border=0>
... c'est gênant!
Pour info, j'utilise la class mail (j'y suis arrivé non sans mal d'ailleurs!!!) en générant, un peu comme la newsletter, une page "mail_reponse.html" (sous les conseils avisés de Grummfy) et c'est cette page html que je transmets.
Je pense que c'est la fonction smyleys de /includes/functions/fonctions_message.php qui coince car c'est prévu pour un accès serveur et non en "distant" (en lien image). D'ailleurs, le parse des images fonctionne très bien.
/************************************
* Parse les symboles smileys en leurs équivalent HTML, à utiliser lors de la lecture d'un texte
************************************/
function smileys($texte, $smiley)
{
global $racine, $theme;
static $origine = array(), $remplacement = array(), $passed = 0;
if (!$passed)
{
for ( $s = 0; $s < count($smiley); $s++ )
{
$origine[] = "/(?<=.\W|\W.|^\W)" . preg_quote($smiley[$s]['smiley_code'], "/") . "(?=.\W|\W.|\W$)/";
$remplacement[] = sprintf($theme['img'], $racine . 'images/smileys/' . $smiley[$s]['smiley_nom'], $smiley[$s]['smiley_nom'], $smiley[$s]['smiley_nom']);
}
$passed = 1;
}
$texte = preg_replace($origine, $remplacement, ' ' . $texte . ' ');
$texte = substr($texte, 1, -1);
return $texte;
}
Quelu'un peut-il m'apporter une astuce svp ?
merci !