Forums NFrance

Forum de discussions NFrance - Support offres dédiées et mutualisées

Vous n'êtes pas identifié.

Annonce

Attention, le forum est public, ne postez donc jamais votre mot de passe en clair dans un message.

#1 26-03-2008 19:25:43

pdubreuil
Nouveau membre
Date d'inscription: 29-05-2007
Messages: 13

formulaire fonction mail déficiente

Il me semble avoir bien suivi vos informations pour installer un formulaire de contact, mais je n'ai aucun retour. La fonction mail ne semble pas fonctionner.

Il s'agit de formulaire de la page :
http://www.cuisine-habitat-design.com/Contact.php3

qui retourne correctement cette page remplie des informations notées sur le formulaire :
http://www.cuisine-habitat-design.com/traitement.php3

mais je ne reçois aucune info sur ma messagerie.

Où ai-je loupé un épisode ?

Merci si vous pouviez m'aider à débloquer la situation.

Philippe Dubreuil

Hors ligne

 

#2 27-03-2008 14:18:53

joris
Moderateur
Date d'inscription: 27-06-2007
Messages: 1055

Re: formulaire fonction mail déficiente

Bonjour,
je cite votre script :

Code:

//On envoie un mail contenant les donn\xe9es mail("info@cuisine-habitat-design.c
om","Formulaire en ligne","$Name\n$Nom\n$Prenom\n$Adresse_1\n$Adresse_2\n$CP\n$V
ille\n$eMail\n$Tel\n$Precisions","From: info@cuisine-habitat-design.com\nReply-T
o: info@cuisine-habitat-design.com");^M

Y a comme un petit problème non ?


Joris
Support NFrance
---------------------------
N'oubliez pas la FAQ wink

Hors ligne

 

#3 31-03-2008 16:06:20

pdubreuil
Nouveau membre
Date d'inscription: 29-05-2007
Messages: 13

Re: formulaire fonction mail déficiente

Bonjour,

Vous voulez dire que la ligne de code doit être fermée avec  ;?> sans doute.
C'est pourtant comme cela qu'est fermée cette ligne de code lorsque je transfère le fichier de mon pc sur votre serveur.
Et je ne m'explique pas comment il peut y avoir ;^M à la place, car je ne l'ai pas écris.
Donc je ne sais pas comment faire la modification car je ne sais pas comment accéder au fichier sur votre serveur.
J'ai refait le transfert plusieurs fois, après m'être appliqué à écrire cette ligne de code, et je n'ai toujours pas de mail en retour.
Ou s'agit-il d'une autre erreur ?

J'espère que vous pourrez me donner une solution.

Merci d'avance.

Cordialement.
Philippe Dubreuil.

Hors ligne

 

#4 02-04-2008 13:56:44

chrisker
Moderateur
Date d'inscription: 19-10-2007
Messages: 1122

Re: formulaire fonction mail déficiente

Bonjour,

ce que veut dire Joris c'est que la balise fermante de php ?> se trouve en bout de ligne commentée ///
Donc la balise fermante n'est pas interprétée ...
Faite simplement un retour à la ligne pour cette balise fermante.

PS: ^M est un code de retour à la ligne (fréquent lorsqu'un fichier venant du monde windows se retrouve sur un serveur unix/linus, mais cela n'a pas d'incidence pour votre problème présent.


Christophe
Support NFrance
---------------------------
N'oubliez pas la FAQ wink

Hors ligne

 

#5 05-04-2008 07:52:14

pdubreuil
Nouveau membre
Date d'inscription: 29-05-2007
Messages: 13

Re: formulaire fonction mail déficiente

Merci pour votre intervention, mais je n'obtiens toujours pas de message mail en retour !

Voici ci-dessous le code tel que le télécharge sur votre serveur :

<body>

Les informations suivantes nous ont été envoyées : <br>
<?
//On affiche ici les informations saisies
echo " Civilité : $Name <br>";
echo " Nom : $Nom <br>";
echo " Prénom : $Prenom <br>";
echo " Adresse_1 : $Adresse_1 <br>";
echo " Adresse_2 : $Adresse_2 <br>";
echo " Code Postal : $CP <br>";
echo " Ville : $Ville <br>";
echo " Votre eMail : $eMail <br>";
echo " Votre Tel : $Tel <br>";
echo " Précisions : $Precisions <br>";
//On envoie un mail contenant les donnees mail("info@cuisine-habitat-design.com","Formulaire en ligne","$Name\n$Nom\n$Prenom\n$Adresse_1\n$Adresse_2\n$CP\n$Ville\n$eMail\n$Tel\n$Precisions","From: info@cuisine-habitat-design.com\nReply-To: info@cuisine-habitat-design.com");
?>
</body>

Je précise que la page traitement.php3 s'affiche après que le formulaire a été rempli et envoyé, mais ces informations ne sont toujours pas reçues par ma messagerie !

J'ai vraiment besoin que ce formulaire fonctionne... Je compte encore sur vous pour y arriver.

Merci pour votre aide et votre indulgence.
Philippe D.

Hors ligne

 

#6 07-04-2008 13:50:19

chrisker
Moderateur
Date d'inscription: 19-10-2007
Messages: 1122

Re: formulaire fonction mail déficiente

Bonjour,

il fallait que votre fonction mail(... soit elle-même en début de ligne pour ne pas faire partie du commentaire ...

PS. Veillez à sécuriser vos formulaires contre les injections d'headers : http://www.phpsecure.info/v2/article/Ma … Inject.php


Christophe
Support NFrance
---------------------------
N'oubliez pas la FAQ wink

Hors ligne

 

#7 07-04-2008 23:36:55

pdubreuil
Nouveau membre
Date d'inscription: 29-05-2007
Messages: 13

Re: formulaire fonction mail déficiente

Merci Chrisker,

Cela fonctionne à présent, c'est parfait.

Mais serait-il possible de me montrer, en reprenant le code que j'ai copié sur mon message du 5/04, comment insérer la fonction mail en début de ligne... ? Je serai sûr à présent de réussir mes futurs formulaires de contact...

Si ce n'est trop demandé, comment sécuriser ce formulaire-ci, et quels risques peut-il courir?

Merci encore pour votre dévouement.

Cordialement.
Philippe Dubreuil

Hors ligne

 

#8 08-04-2008 13:45:13

chrisker
Moderateur
Date d'inscription: 19-10-2007
Messages: 1122

Re: formulaire fonction mail déficiente

Bonjour,

La fonction mail() s'utilise basiquement de cette façon :
<?php
     mail('email_destinataire', 'sujet', 'message', 'entêtes');
?>

Plus d'infos : http://www.vulgarisation-informatique.com/mail.php

pour la sécurisation, comme indiqué dans le lien de mon post précédent, vous pouvez sécuriser vos scripts selon :

Pour sécuriser les failles d'injection d'headers mail, il doit y avoir plusieurs manières différentes. Une idée serait d'ajouter, après la ligne :
$from=$_POST["expediteur"];

le code suivant :
if (eregi("\r",$from) || eregi("\n",$from)){
die("Why ?? sad");
}

On voit que le script est stoppé grâce à une fonction die() si l'expediteur contient "\r" ou "\n". "\n" correspond à LF ou 0x0A/%0A en hexadecimal, c'est-à-dire le saut à la ligne, et "\r" correspond à CR ou 0x0D/%0D en hexadecimal ou "Carriage Return", c'est à dire le retour en début de ligne. Il arrive que les caractères %0A%0D soient utilisés à la place du simple %0A, mais c'est ce dernier caractère qui est réellement dangereux. Le filtre vérifie tout de même se caractère car il n'y a aucune autre raison que le piratage qu'il soit utilisé.


Christophe
Support NFrance
---------------------------
N'oubliez pas la FAQ wink

Hors ligne

 

#9 12-04-2008 19:32:19

pdubreuil
Nouveau membre
Date d'inscription: 29-05-2007
Messages: 13

Re: formulaire fonction mail déficiente

Vraiment merci pour votre aide et vos explications.

Cordialement.
Philippe Dubreuil.

Hors ligne

 

Pied de page des forums

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson