8791 sujets

Développement web côté serveur, CMS

Bonjour,

Je suis nouveau dans le php et me casse le crane sur quelques lignes de codes , je baisse les armes et me remet a vous.. Merci d'avance Smiley smile

J'ai crée une page mail en php => index.php
j'ai crée une page php qui renvoie une image differente selon la variable $email => mosaique.php
(il s'agit d'ecrire en mosaique l'email en question )

Donc, dans index.php , quelquepart j'ai un
<img src="mosaique.php?email=<?= $email ?>">
qui m'affiche l'image en question...

Il me suffit donc maintenant d'ouvrir ma page comme cela :
index.php?email=<?=test@quimarche.com?>
pour que mon email s'affiche correctement avec la mosaique specifique a l'email rentré.


Jusque là tout va bien.. tout fonctionne, cest en ligne.
Mais je veux bien evidemment aller plus loin !

Je voudrais crée une page qui envoie ce mail... a la meme variable $email en question..
J'ai essayé different modele de page mail.php qui utilisent tous la fonction mail( $to , $subject$ , etc ... )
J'ai bien sur essayé de bidouiller pour adapter a mon mail mais rien ne va..

Je crois que le probleme vient du fait que lors de la declaration du contenu html de mon mail ( là ou je copie colle tout le contenu de ma page index.php qui fonctionne bien ), a l'interieur il y a cette fameuse <img src="mosaique.php?email=<?= $email ?>"> .
mais je ne sais meme pas si le probleme vient de la..

Je ne recois aucun email.
pourtant, lorsque le contenu html est juste " bonjour ", la je recois bien un email avec seulement " bonjour " en contenu...

D'ou vient mon probleme ? est ce que je dois declarer ma variable $email differement a l'interieur du code html qui est lui meme a l'interieur de ma page php ? ( ouuuh je suis perdu .. )

Voici le code de ma page mail.php :

<?php


// To
$email = $_GET['email'];

// Subject
$subject = 'Votre email en mosa&iuml;que Or 24 carats';

// clé aléatoire de limite
$boundary = md5(uniqid(microtime(), TRUE));

// Headers
$headers = 'From: OPIOCOLOR Personnalisation <personnalisation@opioonline.com>'."\r\n";
$headers .= 'Mime-Version: 1.0'."\r\n";
$headers .= 'Content-Type: multipart/mixed;boundary='.$boundary."\r\n";
$headers .= "\r\n";

// Message
$msg = 'Texte affiché par des clients mail ne supportant pas le type MIME.'."\r\n\r\n";

// Message HTML
$msg .= '--'.$boundary."\r\n";
$msg .= 'Content-type: text/html; charset=utf-8'."\r\n\r\n";
$msg .= '<div style="	margin: auto; 
		width: 760px; 
		text-align: center; 
		font-family: sans-serif; 
		font-size: 10pt; 
		background-color: white;">
<p style="font-size: 8pt;">
Si vous ne visualisez pas cet email correctement, 
<a href="http://www.opioonline.com/Email/index.php?email=<?= $email ?>">
cliquez-ici</a></p>
<p style="	margin-bottom: 1px; 
		margin-left: 25px; 
		text-align: left; 
		font-size : 12pt; 
		color: #8F877A;">
<strong>Bonjour,</strong></p>
<hr style="margin: 0; margin-bottom: 10px;">
<a href="http://www.opioonline.com">


<img src="mosaiqueAvecFond.php?email=<?= $email ?>"></a>  // le probleme viendrait dici ??


<p style="	margin-bottom: 1px; 
		margin-left: 25px; 
		text-align: left; 
		color: #8F877A;">
Votre email en mosa&iuml;que Or 24 carats</p>
<hr style="margin: 0;">
<p style="text-align: center;">
<a href="http://www.opioonline.com"><img src="http://www.opioonline.com/Email/Images/main.jpg" /></a></p>
<div style="width: 760px; height: 50px; border-top: 1px solid #8F877A; border-bottom: 1px solid #8F877A;">
<a style="text-decoration: none;" href="http://www.opioonline.com">
<div style="	border-left: 1px solid #8F877A; 
		border-left: 1px solid #8F877A; 
		width: 200px; 
		height: 50px; 
		background-color: #8F877A; 
		margin: auto;">
<p style="margin: 0; padding: 5px 0 0 0; text-align: center; font-size: 17px; color: white;">
Entrez dans l&apos;univers </br> d&apos;Opiocolor Online</p>
</div>
</a>
</div>
<p style="font-size: 8pt;">
Si vous ne souhaitez plus recevoir de messages :<br>
<a href="http://www.opioonline.com">cliquez sur ce lien</a></p>
</div>
'."\r\n";

// Fin
$msg .= '--'.$boundary."\r\n";

// Function mail()
mail($email, $subject, $msg, $headers);

?>

Modifié par sheikah (22 May 2012 - 22:18)
Bonjour,
pour commencer tu peux tester le retour de la fonction "mail"

if(mail($email, $subject, $msg, $headers))
 echo 'mail envoyé';
else
 echo 'problème mail non envoyé';

Si le résultat est bien "mail envoyé" alors cherche l'email dans tes spams ou ta corbeille....