bug "dire à un ami" Peel V4

12 messages dans ce sujet

Posté(e) · Signaler ce message

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

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

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,

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

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 ?

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

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.

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

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

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

Bonsoir equi-monde,

que vous renvoie var_dump($yname); ?

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

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

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

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

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

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

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

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 ?

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

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

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

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.

Partager ce message


Lien à poster
Partager sur d’autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !


Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.


Connectez-vous maintenant

Twitter Advisto ecommerce

Facebook PEEL Shopping