8768 sujets

Développement web côté serveur, CMS

Pages :
(reprise du message précédent)

Non ! Ca ne va pas, ta syntaxe est de moins en moins précise. Prends ton temps.


Voici que je te propose en lieu et place

$name = utf8_decode($_POST['name']); 
$email = utf8_decode($_POST['email']); 
$message = utf8_decode($_POST['message']); 
$sujet = utf8_decode($_POST['sujet']);
$to = 'daa.graphiste@skynet.be';//replace with your email
/* Ok jusqu'ici tout va bien */

$mail_corps = "Message de : $name\n"; /* ici on déclare $mail_corps donc pas de point */
$mail_corps .= "Email : $email\n"; 
$mail_corps .= "Contenu : $message";
/* bon jusqu'ici aussi tout va à peu près bien */

$header = "From : $email\n";/* je rajoutte les passages à la ligne */
$header .= "Reply-to : $email\n";
$header .= "MIME-Version: 1.0\n";
$header .= "X-Priority: 3\n";
$header .= "X-Mailer: PHP/\n";/* ici je change les single-quotes par des double-quotes à cause du \n */
$header .= "text/html\n";
$header .= "Charset: UTF-8\n";
$header .= "Content-Transfer-Encoding: 8bit\n";

$success = mail($to, $sujet, $mail_corps, $header);


Partons sur cette base si tu veux bien. Quel en est le résultat ?

A parte: Dans un sujet de Abeille fort proche du tient, je lui ai fais un petit topo (bon vraiment succin) sur la syntaxe Php. A bon entendeur...
De quoi tu te plains, tu l'as ton mail. Aller zou, suivant !

Edit: je rigole wait je complète ma réponse

plus tard...
Bon, on peut discerner 2 problèmes :
d'une part une partie de ton en-tête est transmise comme corps de message, c'est pas bon ça.
d'autre part tes variables provenant de ton formulaire (les données POST) ne semblent pas hydratées.

Le premier point me prend la tête, mettons le de côté un instant de la manière suivante :
$name = utf8_decode($_POST['name']); 
$email = utf8_decode($_POST['email']); 
$message = utf8_decode($_POST['message']); 
$sujet = utf8_decode($_POST['sujet']);
$to = 'daa.graphiste@skynet.be';
$mail_corps = "Message de : $name\n"; 
$mail_corps .= "Email : $email\n"; 
$mail_corps .= "Contenu : $message";

/* Je passe le header en commentaire !
$header = "From : $email\n";
$header .= "Reply-to : $email\n";
$header .= "MIME-Version: 1.0\n";
$header .= "X-Priority: 3\n";
$header .= "X-Mailer: PHP/\n";
$header .= "text/html\n";
$header .= "Charset: UTF-8\n";
$header .= "Content-Transfer-Encoding: 8bit\n";
*/

$success = mail($to, $sujet, $mail_corps, /*$header*/);/* ici aussi je désactive les en-têtes */


Pour le second point, vérifie si tes données POST sont bien hydratées. Comment ? Rajoutte ceci, comme le suggérait Jencal, :
echo '<pre>';print_r($_POST);echo '</pre>';
en début de code.
Ceci afin de déterminer si le formulaire envoi bien les données.

Quel est le résultat de cette instruction ?
Modifié par Greg_Lumiere (17 Jun 2016 - 17:42)
Greg_Lumiere a écrit :
De quoi tu te plains, tu l'as ton mail. Aller zou, suivant !

Edit: je rigole wait je complète ma réponse


Mais aussi je t'adore parfait inconnu lol
Fais trèèèèèèèèès attention en recopiant stp. Un caractère mal mis et tout partira en cacahuète. Le codage c'est précis au nanomètre.


Après tout ce temps passé ensemble pouvons-nous encore nous considérer comme des inconnus ?
Modifié par Greg_Lumiere (17 Jun 2016 - 17:22)
Greg_Lumiere a écrit :
A la re-lecture de ce sujet, je me dis qu'on n'avance pas bien fort mais alors qu'est-ce qu'on rigole !

Smiley lol


Je regarde le tout et je te dis quoi ???? merciiii
Daa a écrit :
Je regarde le tout et je te dis quoi ???? merciiii
Smiley confused C'est une question ou une façon de parler ?

Si c'est une question, la réponse est ici.
Greg_Lumiere a écrit :
Fais trèèèèèèèèès attention en recopiant stp. Un caractère mal mis et tout partira en cacahuète. Le codage c'est précis au nanomètre.


Après tout ce temps passé ensemble pouvons-nous encore nous considérer comme des inconnus ?


Bon ben ça ne fonctionne pas... Smiley bawling
Modifié par Daa (17 Jun 2016 - 20:02)
Greg_Lumiere a écrit :
Ça donne quoi ton print_r ?

Rien...

Je me demande si c'est pas ma page Web qui pose problème car je viens de tester celui ...

Vite fait bien fait :


<?php
$msg_erreur = "Erreur. Les champs suivants doivent être obligatoirement 
remplis :<br/><br/>";
$msg_ok = "Votre demande a bien ete envoye.";
$message = $msg_erreur;
define('MAIL_DESTINATAIRE','vanhamaxelle@gmail.com'); // remplacer par votre email
define('MAIL_SUJET','Message');

// vérification des champs
if (empty($_POST['name'])) 
$message .= "Votre nom<br/>";
if (empty($_POST['email'])) 
$message .= "Votre email<br/>";
if (empty($_POST['phone'])) 
$message .= "Votre numéro <br/>";
if (empty($_POST['sujet'])) 
$message .= "Votre sujet<br/>";
if (empty($_POST['message'])) 
$message .= "Votre message<br/>";

// si un champ est vide, on affiche le message d'erreur et on stoppe le script
if (strlen($message) > strlen($msg_erreur)) {
   echo $message; die();
}

// sinon c'est ok => on continue
foreach($_POST as $index => $valeur) {
  $$index = stripslashes(trim($valeur));
}

$interets = $_POST['interets'];
$sqlinterets = '';
for ($i=0; $i<count($interets); $i++)
{
  $sqlinterets .= $interets[$i];
  $sqlinterets .= ', ';
}

//Préparation de l'entête du mail:
$mail_entete  = "MIME-Version: 1.0\r\n";
$mail_entete .= "From: {$_POST['name']} "
             ."<{$_POST['email']}>\r\n";
$mail_entete .= 'Reply-To: '.$_POST['email']."\r\n";
$mail_entete .= 'Content-Type: text/plain; charset="iso-8859-1"';
$mail_entete .= "\r\nContent-Transfer-Encoding: 8bit\r\n";
$mail_entete .= 'X-Mailer:PHP/' . phpversion()."\r\n";

// préparation du corps du mail
$mail_corps  = "Message de : $name\n";
$mail_corps .= "Adresse : $email\n";
$mail_corps .= "Ce qu'il désire : $message\n\n\n";
$mail_corps .= $comments;

// envoi du mail
if (mail(MAIL_DESTINATAIRE,MAIL_SUJET,$mail_corps,$mail_entete)) {
  //Le mail est bien expédié
  echo $msg_ok;
} else {
  //Le mail n'a pas été expédié
  echo "Une erreur est survenue lors de l'envoi du formulaire par email";
}

?>


Mais ce code ci ne veut pas fonctionner avec mon site...
Greg_Lumiere a écrit :
Ça donne quoi ton print_r ?


Je vais essayer de ré-envoyer mes pages à mon domaine...
Si j'ai encore un soucis de formulaire je reviens ici à la semaine.

En tout cas merci pour votre aide,
merci pour ta grande aide Smiley lol
Greg_Lumiere a écrit :
Ça donne quoi ton print_r ?


Saluuuuttt !

Comment vas-tu ?
Voilà après m'être battue j'arrive à recevoir mes emails mais j'ai un soucis de é è à ... accent...

Sais-tu me dire ... Si tu sais la réponse Smiley lol
J'aimerais que quand je reçois l'email, la personne le reçoit aussi.. Smiley lol
Et là.. Je nage
Pages :