bug "dire à un ami" Peel V4

12 posts in this topic

Posted · Report post

Bonjour,

La fonction "dire à un ami" de la V4 envoie bien le mail, mais ne fait pas figurer l'expediteur ni l'url de la page.

Qq'un aurait qq idées de débugage ?

Bonne soirée,

S

Share this post


: post
Share on other sites

Posted · Report post

Bonjour Seal20,

Le fichier concerné est : direaunami.php.

Ce fichier fait appel à la variable :

OBJECT_EMAIL_FRIEND

qui contient, en francais :

define("OBJECT_EMAIL_FRIEND","$fname[$numitems] bonjour !\n\n$yname a visité le site $site et pense que vous trouverez cet article intéressant :\n\nURL: $referer \n\nCommentaires supplémentaires : \n------------------------------------ \n$comments \n------------------------------------\n\nMerci \n$site \n$support",TRUE);

$referer est théoriquement la page du produit, et $yname l'expéditeur.

Que contient l'email que vous recevez via ce module?

Cordialement,

Share this post


: post
Share on other sites

Posted · Report post

bonjour Jean-Hervé

il contient :

bonjour !

a visité le site Test V4 - Magasin en ligne et pense que vous trouverez cet article intéressant :

URL:

Commentaires supplémentaires :

------------------------------------

autrement dit, il ne contient pas le nom du destinataire, ni de l'expediteur, ni l'url de la page, ni du commentaire.

Par contre il est bien expédié. Je n'ai fait aucune modif sur la page direaunami.php ...

voici le code de la page :

----------------------------------------------------------------------------------------------------------------

<?php

include("configuration.inc.php");

if (sizeof($_POST)> 0) {

$yname = vb($_POST['yname']);

$fname = vb($_POST['fname']);

$referer = vb($_POST['referer']);

$comments = vb($_POST['comments']);

$yemail = vb($_POST['yemail']);

$femail = vb($_POST['femail']);

}

$DOC_TITLE = "[PEEL.FR]";

include("$repertoire_modele/haut.php");

switch (vb($_REQUEST['mode'])) {

case "send" :

?>

<TABLE BORDER="0" width="100 %" CELLSPACING="5" CELLPADDING="5">

<tr>

<td>

<font >

<?

if (($yname=="") || ($fname=="") || ($femail=="")|| ($yemail=="")) {

echo "<h2>".TELL_FRIEND."</h2>";

echo MSG_ERR_FRIEND;

} else {

echo "<h2>".TELL_FRIEND."</h2>";

echo MSG_FRIEND_SEND;

$items = "6";

for ($numitems=1; $numitems < $items; $numitems++) {

if (($fname[$numitems]!="") && ($femail[$numitems]!="")) {

mail("$femail[$numitems]",html_entity_decode(SUBJECT_EMAIL_FRIEND),html_entity_decode(OBJECT_EMAIL_F

RIEND),"FROM:$yemail");

}

}

?>

<p>

<a href = "<? echo "$referer"; ?>" ><?echo BACK_REFERER;?></a></p>

</font>

<?

} ?>

</td>

</tr>

</table>

<?

break;

default :

?>

<form method="post" action="<?=$_SERVER['PHP_SELF'];?>">

<input name="mode" value="send" type="hidden">

<!-- D&eacute;but Dire &agrave; un ami -->

<?

$referer = $_SERVER['HTTP_REFERER'];

echo "<h2>". TELL_FRIEND."</h2>";

echo nl2br(html_entity_decode(MSG_TELL_FRIEND)) ?>

<table border="0" cellpadding="2" cellspacing="0" width="100%">

<tr>

<td><?echo FROM ?><font color="#CC0000">(*)</font> : </td>

<td><?echo EMAIL ?> <font color="#CC0000">(*)</font> : </td>

</tr>

<tr>

<td><input class="formulaire1" type="text" name="yname" size="25"></td>

<td><input class="formulaire1" type="text" name="yemail" size="29"></td>

</tr>

<tr>

<td><?echo THEIR_NAMES ?><font color="#CC0000">(*)</font></td>

<td><?echo THEIR_EMAILS ?> <font color="#CC0000">(*)</font></td>

</tr>

<tr>

<td><input class="formulaire1" type="text" name="fname[1]" size="25"></td>

<td><input class="formulaire1" type="text" name="femail[1]" size="29"></td>

</tr>

<tr>

<td><input class="formulaire1" type="text" name="fname[2]" size="25"></td>

<td><input class="formulaire1" type="text" name="femail[2]" size="29"></td>

</tr>

<tr>

<td><input class="formulaire1" type="text" name="fname[3]" size="25"></td>

<td><input class="formulaire1" type="text" name="femail[3]" size="29"></td>

</tr>

<tr>

<td><input class="formulaire1" type="text" name="fname[4]" size="25"></td>

<td><input class="formulaire1" type="text" name="femail[4]" size="29"></td>

</tr>

<tr>

<td><input class="formulaire1" type="text" name="fname[5]" size="25"></td>

<td><input class="formulaire1" type="text" name="femail[5]" size="29"></td>

</tr>

<tr>

<td colspan="2"><?echo COMMENTS ?> : </td>

</tr>

<tr>

<td colspan="2" >

<textarea class="formulaire1" rows="6" name="comments" style="width:500px"></textarea></td>

</tr>

<tr>

<td colspan="2" align="center">

<input type="hidden" NAME="referer" VALUE="<? echo $referer; ?>">

<input class="bouton" type="submit" NAME="action" VALUE="<?echo SEND ?>">

</td>

</tr>

<tr>

<td colspan="2" align="left">

<font color=red>(*) <?echo MANDATORY ?></font>

</td>

</tr>

</table>

</FORM>

<?

break;

}

include("$repertoire_modele/bas.php");

?>

-----------------------------------------------------------------------------------

une idée de ce qu'il faut corriger ?

Share this post


: post
Share on other sites

Posted · Report post

Bonsoir,

Dans direaunami.php,

avant

mail("$femail[$numitems]",html_entity_decode(SUBJECT_EMAIL_FRIEND),html_entity_decode(OBJECT_EMAIL_F

RIEND),"FROM:$yemail");

Il faut débugguer la valeurs de yname avec var_dump, sachant que yname = vb($_POST['yname']);, donc récupérer dans l'input text du formulaire.

Share this post


: post
Share on other sites

Posted · Report post

soit je m'y suis pris comme un noob soit c'est pas ça ... moyen d'être plus clair ?

Share this post


: post
Share on other sites

Posted · Report post

Bonsoir equi-monde,

que vous renvoie var_dump($yname); ?

Share this post


: post
Share on other sites

Posted · Report post

Bonsoir equi-monde,

que vous renvoie var_dump($yname); ?

J'ai le même problème :

Après print-r'$_POST) Tous les postes sont renseignés mais le mail arrive à vide de TOUS que ce soit dans SUBJECT_EMAIL_FRIEND ou OBJECT_EMAIL_FRIEND.

Ne sont pas pris en compte $fname et $referer.

$yname est OK puisque réception du message...

Une idée...Merci

Share this post


: post
Share on other sites

Posted · Report post

Bonsoir Arlatan, les fichiers de langue sont-ils correctement appelés?

Share this post


: post
Share on other sites

Posted · Report post

Bonsoir Arlatan, les fichiers de langue sont-ils correctement appelés?

Bonjour,

la réponse est OUI, voici le contenu du Mail :

bonjour !

xxxxx a visité le site ANGES ET FEERIES et pense que vous trouverez cet article intéressant :

URL: xxxxxxxx

Commentaires supplémentaires :

------------------------------------

xxxxxxxxx

------------------------------------

Merci

xxxxx = Manquants pourtant présents au débugage

J'avoue ne pas comprendre ce qui se passe. Merci de vos mumières

Share this post


: post
Share on other sites

Posted · Report post

Bonjour,

Je vous propose de décomposer correctement le message envoyé afin d'éviter l'utilisation de variables php dans une variable globale de langue.

Dans un premier temps, peut-être pourriez-vous modifier :

mail("$femail[$numitems]",html_entity_decode(SUBJECT_EMAIL_FRIEND),html_entity_decode(OBJECT_EMAIL_FRIEND),"FROM:$yemail");
Par :
$message = $fname[$numitems] . ' bonjour !\n\n' . $yname . ' a visit&eacute; le site ' . $site . ' et pense que vous trouverez cet article int&eacute;ressant :\n\nURL: ' . $referer . ' \n\nCommentaires suppl&eacute;mentaires : \n------------------------------------ \n' . $comments . ' \n------------------------------------\n\nMerci \n' . $site . ' \n' . $support . '";

mail("$femail[$numitems]",html_entity_decode(SUBJECT_EMAIL_FRIEND),html_entity_decode($message),"FROM:$yemail");[/code]

Est-ce que cela a résolu le soucis ?

Share this post


: post
Share on other sites

Posted · Report post

Bonjour,

Je vous propose de décomposer correctement le message envoyé afin d'éviter l'utilisation de variables php dans une variable globale de langue.

Dans un premier temps, peut-être pourriez-vous modifier :

mail("$femail[$numitems]",html_entity_decode(SUBJECT_EMAIL_FRIEND),html_entity_decode(OBJECT_EMAIL_FRIEND),"FROM:$yemail");
Par :
$message = $fname[$numitems] . ' bonjour !\n\n' . $yname . ' a visit&eacute; le site ' . $site . ' et pense que vous trouverez cet article int&eacute;ressant :\n\nURL: ' . $referer . ' \n\nCommentaires suppl&eacute;mentaires : \n------------------------------------ \n' . $comments . ' \n------------------------------------\n\nMerci \n' . $site . ' \n' . $support . '";


mail("$femail[$numitems]",html_entity_decode(SUBJECT_EMAIL_FRIEND),html_entity_decode($message),"FROM:$yemail");

Est-ce que cela a résolu le soucis ?

SUPER ! C'est encore mieux sans la concaténation :

$message = "$fname[$numitems] bonjour !\n\n $yname a visit&eacute; le site $site et pense que vous trouverez cet article int&eacute;ressant :\n\nURL: $referer \n\nCommentaires suppl&eacute;mentaires : \n------------------------------------ \n $comments \n------------------------------------\n\nMerci \n\n$site \n$support ";

Encore mille merci

Share this post


: post
Share on other sites

Posted · Report post

De rien arlatan.

En revanche, si vous désirez faire un travail propre en ce qui concerne le multilingue, je vous conseille maintenant que cela fonctionne de remplacer les morceaux de texte écrit en dur par des variables de langue afin d'internationaliser l'email si vous avez l'intention d'utiliser d'autres langues que le français dans le futur.

Share this post


: post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now

Twitter Advisto ecommerce

Facebook PEEL Shopping