Aide php

glaw57 Messages postés 13 Date d'inscription   Statut Membre Dernière intervention   -  
socquetsarah Messages postés 163 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour j'ai un problème avec ce code PHP : Quelqu'un pourrait me dire ce qui ne va pas ? Merci

<html>
<head></head>
<body>
<?php

// DEBUT Fonction de contrôle du mail PHP-UNIX
function check_mail($champ6)
{
if
((preg_match('/(@.*@)|(\.\.)|(@\.)|(\.@)|(^\.)/', $champ6))
||
(preg_match('/^.+\@(\[?)[a-zA-Z0-9\-\.]+\.([a-zA-Z]{2,3}|[0-9]{1,3})(\]?)$/',$champ6)) )
{
$host = explode('@', $champ6);

if(checkdnsrr($host[1].'.', 'MX') ) return true;
if(checkdnsrr($host[1].'.', 'A') ) return true;
if(checkdnsrr($host[1].'.', 'CNAME') ) return true;
}
return false;
}
// FIN Fonction de contrôle du mail
$MailTo = "glaw-57@hotmail.fr"; //adresse à laquelle sera envoyé le contenu du formulaire
$MailSubject = $champ7 ; //texte qui va figurer dans le champ "sujet" du email
$MailHeader = $champ6; //adresse email qui va figurer dans le champ "expéditeur" du email et qui peut être remplacé par la variable "$champx" ("$champ3").

/* Les routines suivantes permettent à chacune des variables de prendre la valeur des champs du formulaire et de les stocker ensuite dans la variable globale MailBody qui constituera le corps du message */

$Envoi = 1; //initialisation de la variable envoi à 1

if ($champ1 == "")
{ //nom du champ1
echo("Vous n'avez pas complété le champ 1.<br>"); //message qui s'affiche si le visiteur n'a pas rempli ce champ
$Envoi = 0; //si le champ1 n'a pas été rempli, la variable envoi prend la valeur de 0
}
else {
$MailBody .= "Nom : $champ1\n"; //si le champ1 contient de l'information, elle est stockée dans la variable MailBody
}
if ($champ2 == "")
{
echo("Vous n'avez pas complété le champ 2.<br>");
$Envoi = 0;
}
else
{
$MailBody .= "Prénom : $champ2\n";
}
if ($champ3 == "")
{
echo("Vous n'avez pas complété le champ 3.<br>");
$Envoi = 0;
}
else
{
$MailBody .= "Adresse : $champ3\n";
}
if($champ4 == "")
{
echo("Vous n'avez pas complété le champ 4.<br>");
$Envoi = 0;
}
else
{
$Mailbody .= "Téléphone : $champ4\n";
}
if($champ5 == "")
{
echo("Vous n'avez pas complété le champ 5.<br>");
}
else
{
$MailBody .= "Téléphone Mobile : $champ5\n";
}
if ($champ6 == "")
{
echo("Vous n'avez pas complété le champ 6.<br>");
$Envoi = 0;
}
else
{
if (check_mail($champ6))
{
$MailBody .= "Mail : $champ6\n";
}
else
{
echo("L'adresse e-mail du champ 6 n'est pas valide<br>");
$Envoi = 0;
}
$MailBody .="Votre demande de renseignement porte sur : ";

$items = 3; //initialisation du nombre d'items possibles

for ($i = 1; $i <= $items; $i++) //boucle sur le nombre d'items
{
$MailBody .= "$champ7[$i], "; //stockage des items choisis dans la variable MailBody
}
if ($Envoi == 0) echo("<p> </p><p> </p><p align=\"center\"><a href=\"c_outils/c_formulaire.html\"><strong>Retour</strong></a></p>");

if ($champ8 == "")
{
echo("Vous n'avez pas complété le champ 8.<br>");
$Envoi = 0;
}
else
{
$MailBody .= "Commentaire : $champ8\n";
}

//Envoi du message

if ($Envoi == 1) //vérification que la variable envoi est bien à 1
{
mail($MailTo, $MailSubject, $MailBody, $MailHeader); //envoi du message
echo("<p>Votre message a bien été envoyé.<br>Merci de vos commentaires.");
echo("<p> </p><p> </p><p align=\"center\"><a href=\"formulaire.html\"><strong>Retour</strong></a></p>"); //affichage d'un message de confirmation.
}
?>
</body>
</html>
A voir également:

4 réponses

socquetsarah Messages postés 163 Date d'inscription   Statut Membre Dernière intervention   35
 
<?php
echo("<html> ")
echo("<head></head> ")
echo("<body> ")


// DEBUT Fonction de contrôle du mail PHP-UNIX
function check_mail($champ6)
{
if
((preg_match('/(@.*@)|(\.\.)|(@\.)|(\.@)|(^\.)/', $champ6))
||
(preg_match('/^.+\@(\[?)[a-zA-Z0-9\-\.]+\.([a-zA-Z]{2,3}|[0-9]{1,3})(\]?)$/',$champ6)) )
{
$host = explode('@', $champ6);

if(checkdnsrr($host[1].'.', 'MX') ) return true;
if(checkdnsrr($host[1].'.', 'A') ) return true;
if(checkdnsrr($host[1].'.', 'CNAME') ) return true;
}
return false;
}
// FIN Fonction de contrôle du mail
$MailTo = "glaw-57@hotmail.fr"; //adresse à laquelle sera envoyé le contenu du formulaire
$MailSubject = $champ7 ; //texte qui va figurer dans le champ "sujet" du email
$MailHeader = $champ6; //adresse email qui va figurer dans le champ "expéditeur" du email et qui peut être remplacé par la variable "$champx" ("$champ3").

/* Les routines suivantes permettent à chacune des variables de prendre la valeur des champs du formulaire et de les stocker ensuite dans la variable globale MailBody qui constituera le corps du message */

$Envoi = 1; //initialisation de la variable envoi à 1

if ($champ1 == "")
{ //nom du champ1
echo("Vous n'avez pas complété le champ 1.<br>"); //message qui s'affiche si le visiteur n'a pas rempli ce champ
$Envoi = 0; //si le champ1 n'a pas été rempli, la variable envoi prend la valeur de 0
}
else {
$MailBody .= "Nom : $champ1\n"; //si le champ1 contient de l'information, elle est stockée dans la variable MailBody
}
if ($champ2 == "")
{
echo("Vous n'avez pas complété le champ 2.<br>");
$Envoi = 0;
}
else
{
$MailBody .= "Prénom : $champ2\n";
}
if ($champ3 == "")
{
echo("Vous n'avez pas complété le champ 3.<br>");
$Envoi = 0;
}
else
{
$MailBody .= "Adresse : $champ3\n";
}
if($champ4 == "")
{
echo("Vous n'avez pas complété le champ 4.<br>");
$Envoi = 0;
}
else
{
$Mailbody .= "Téléphone : $champ4\n";
}
if($champ5 == "")
{
echo("Vous n'avez pas complété le champ 5.<br>");
}
else
{
$MailBody .= "Téléphone Mobile : $champ5\n";
}
if ($champ6 == "")
{
echo("Vous n'avez pas complété le champ 6.<br>");
$Envoi = 0;
}
else
{
if (check_mail($champ6))
{
$MailBody .= "Mail : $champ6\n";
}
else
{
echo("L'adresse e-mail du champ 6 n'est pas valide<br>");
$Envoi = 0;
}
$MailBody .="Votre demande de renseignement porte sur : ";

$items = 3; //initialisation du nombre d'items possibles

for ($i = 1; $i <= $items; $i++) //boucle sur le nombre d'items
{
$MailBody .= "$champ7[$i], "; //stockage des items choisis dans la variable MailBody
}
if ($Envoi == 0) echo("<p> </p><p> </p><p align=\"center\"><a href=\"c_outils/c_formulaire.html\"><strong>Retour</strong></a></p>");

if ($champ8 == "")
{
echo("Vous n'avez pas complété le champ 8.<br>");
$Envoi = 0;
}
else
{
$MailBody .= "Commentaire : $champ8\n";
}

//Envoi du message

if ($Envoi == 1) //vérification que la variable envoi est bien à 1
{
mail($MailTo, $MailSubject, $MailBody, $MailHeader); //envoi du message
echo("<p>Votre message a bien été envoyé.<br>Merci de vos commentaires.");
echo("<p> </p><p> </p><p align=\"center\"><a href=\"formulaire.html\"><strong>Retour</strong></a></p>"); //affichage d'un message de confirmation.
}
?>
</body>
</html>

0
glaw57 Messages postés 13 Date d'inscription   Statut Membre Dernière intervention  
 
Ton code ne marche pas non plus... ils me disent problème ligne 3 donc ?
0
socquetsarah Messages postés 163 Date d'inscription   Statut Membre Dernière intervention   35
 
il me semblait que quelques choses clochets

<?php
echo("<html> ") ;
echo("<head></head> ") ;
echo("<body> ") ;

// DEBUT Fonction de contrôle du mail PHP-UNIX
function check_mail($champ6)
{
if
((preg_match('/(@.*@)|(\.\.)|(@\.)|(\.@)|(^\.)/', $champ6))
||
(preg_match('/^.+\@(\[?)[a-zA-Z0-9\-\.]+\.([a-zA-Z]{2,3}|[0-9]{1,3})(\]?)$/',$champ6)) )
{
$host = explode('@', $champ6);

if(checkdnsrr($host[1].'.', 'MX') ) return true;
if(checkdnsrr($host[1].'.', 'A') ) return true;
if(checkdnsrr($host[1].'.', 'CNAME') ) return true;
}
return false;
}
// FIN Fonction de contrôle du mail
$MailTo = "glaw-57@hotmail.fr"; //adresse à laquelle sera envoyé le contenu du formulaire
$MailSubject = $champ7 ; //texte qui va figurer dans le champ "sujet" du email
$MailHeader = $champ6; //adresse email qui va figurer dans le champ "expéditeur" du email et qui peut être remplacé par la variable "$champx" ("$champ3").

/* Les routines suivantes permettent à chacune des variables de prendre la valeur des champs du formulaire et de les stocker ensuite dans la variable globale MailBody qui constituera le corps du message */

$Envoi = 1; //initialisation de la variable envoi à 1

if ($champ1 == "")
{ //nom du champ1
echo("Vous n'avez pas complété le champ 1.<br>"); //message qui s'affiche si le visiteur n'a pas rempli ce champ
$Envoi = 0; //si le champ1 n'a pas été rempli, la variable envoi prend la valeur de 0
}
else {
$MailBody .= "Nom : $champ1\n"; //si le champ1 contient de l'information, elle est stockée dans la variable MailBody
}
if ($champ2 == "")
{
echo("Vous n'avez pas complété le champ 2.<br>");
$Envoi = 0;
}
else
{
$MailBody .= "Prénom : $champ2\n";
}
if ($champ3 == "")
{
echo("Vous n'avez pas complété le champ 3.<br>");
$Envoi = 0;
}
else
{
$MailBody .= "Adresse : $champ3\n";
}
if($champ4 == "")
{
echo("Vous n'avez pas complété le champ 4.<br>");
$Envoi = 0;
}
else
{
$Mailbody .= "Téléphone : $champ4\n";
}
if($champ5 == "")
{
echo("Vous n'avez pas complété le champ 5.<br>");
}
else
{
$MailBody .= "Téléphone Mobile : $champ5\n";
}
if ($champ6 == "")
{
echo("Vous n'avez pas complété le champ 6.<br>");
$Envoi = 0;
}
else
{
if (check_mail($champ6))
{
$MailBody .= "Mail : $champ6\n";
}
else
{
echo("L'adresse e-mail du champ 6 n'est pas valide<br>");
$Envoi = 0;
}
$MailBody .="Votre demande de renseignement porte sur : ";

$items = 3; //initialisation du nombre d'items possibles

for ($i = 1; $i <= $items; $i++) //boucle sur le nombre d'items
{
$MailBody .= "$champ7[$i], "; //stockage des items choisis dans la variable MailBody
}
if ($Envoi == 0) echo("<p> </p><p> </p><p align=\"center\"><a href=\"c_outils/c_formulaire.html\"><strong>Retour</strong></a></p>");

if ($champ8 == "")
{
echo("Vous n'avez pas complété le champ 8.<br>");
$Envoi = 0;
}
else
{
$MailBody .= "Commentaire : $champ8\n";
}

//Envoi du message

if ($Envoi == 1) //vérification que la variable envoi est bien à 1
{
mail($MailTo, $MailSubject, $MailBody, $MailHeader); //envoi du message
echo("<p>Votre message a bien été envoyé.<br>Merci de vos commentaires.");
echo("<p> </p><p> </p><p align=\"center\"><a href=\"formulaire.html\"><strong>Retour</strong></a></p>"); //affichage d'un message de confirmation.
}
?>
</body>
</html>
0
glaw57 Messages postés 13 Date d'inscription   Statut Membre Dernière intervention  
 
Ok merci mais maintenant ils me disent que mes variables ne sont pas rempli pourtant dans mon autre page je rempli bien ses variable.

Peut-tu m'aider stp?

Si tu veux bien je peux t'envoyé mes 2 pages par mail pour voir ce qui ne va pas.

Merci
0
glaw57 Messages postés 13 Date d'inscription   Statut Membre Dernière intervention  
 
Je pense avoir trouver, faut-il que je déclare mes variables avant et que je les initialise a 0?

Mais comment faire pour quel soit remplis par une auitre page?

Merci de répondre
0
socquetsarah Messages postés 163 Date d'inscription   Statut Membre Dernière intervention   35
 
bonjour dans ton formulaire, les endroits où tu recuperes les données saisit dans le formulaires, tu les mets dans un $Post['nom du champs']
il me semble que c'est ca
0