Cette syntaxe php est-elle correcte

WRInaute discret
Code:
if ($data['Reponse'] == 1) {
mail('tralala@monsiteweb.com','Accord de paiement ','Un paiement a été effectué ');
} else {
mail('tralala@monsiteweb.com','Refus de paiement ','Un paiement a été refusé ');
}
Normalement je dois recevoir un mail si la transcation est ok mais aussi si elle échoue.
Là je ne reçois rien...
Merci pour votre aide.
 
WRInaute occasionnel
Tu as oublié certains header 'From: tonmail' notamment.

C'est peut être la raison de la non reception? (as tu regardé ta boite spam?).
 
WRInaute discret
Bon je vais mettre le code complet c'est plus simple...
Code:
//Appel des fichiers de l'API
	require_once "marchand.php";
	
	//Récupération de la chaîne cryptée envoyée en paramètre par socket
	$data=$_POST['rep'];
	
	//Test de l'option magic_quotes_gpc sur le serveur du marchand
	if (get_magic_quotes_gpc()) $data=stripslashes($data);

	//Récupération des données à partir de la chaîne $data
	$trsdata = parseResponse($data);
	
	//Est-ce que la chaîne reçue a pu être décryptée ?
	if ($trsdata['Errno'] != 0) {
		
		//Option : Enregistrez ici l'erreur en base de donnée
		//Utilisez pour cela le paramètre $trsdata['Errno']
		print 'KO';
		print "Erreur dans l'appel de parseResponse. Code erreur = " . $trsdata['Errno'];
		
	} else {

			//Est-ce que la transaction a pu avoir lieu sur le serveur ?
			if ($trsdata['ReponseMarchand'] == 1) {
			
				//Le paiement a pu être effectué
				mail('toto@monsiteweb.com','Accord de paiement','Un paiement a été effectué');
						

			} else {
				//Option : Enregistrez ici l'erreur en base de donnée. Annulez la transaction.
				//Utilisez pour cela les paramètres $trsdata['IDTransaction'] et $trsdata['Errno']
				mail('toto@monsiteweb.com','Refus de paiement','Un paiement a été refusé');
				}
Voila, voila
 
WRInaute discret
stoff a dit:
Tu as oublié certains header 'From: tonmail' notamment.

C'est peut être la raison de la non reception? (as tu regardé ta boite spam?).
Non j'ai rien dans le spam, je croyais qu'on pouvait se passer des entêtes :(
 
WRInaute accro
le mieux est de mettre des flags (affichés à l'écran ou dans un fichier texte) intermédiaires pour voir où ça bloque.
Y a-t-il des données dans $data
l'url transmise contient-elle quelque chose ?
 
WRInaute discret
Oui tout fonctionne normalement pour l'instant, et le système est déjà en place.

J'aurais juste voulu savoir si le test sur
Code:
if ($trsdata['ReponseMarchand'] == 1)
allait bien envoyer un mail sinon il envoie l'autre mail.

Euh pour l'instant j'ai bloqué le système car j'ai fait trop de tests
oups-pardon-9877.gif
 
Discussions similaires
Haut