8711 sujets

Développement web côté serveur, CMS

Bonjours j'ai créer un formulaire de contact avec un lien de payement avec plusieurs champs à remplir pour le visiteurs, lorsque les champs

sont remplient et l'utilisateur valide un lien vers un Paypal pour le payements marche mais je rencontre un problème que je n'arrive pas à

résoudre lorsque je valide il me renvoie sur cette pages

Quelqu'un pourrait t'il m'aider je mets mon code source HTML et PHP merci bien

Pages Erreurs :

envoyer le formulaire."; $message_formulaire_invalide = "Vérifiez que tous les champs soient bien remplis et que l'email soit sans erreur."; // on teste si le formulaire a été soumis if (!isset($_POST['envoi'])) { // formulaire non envoyé echo '

'.$message_erreur_formulaire.'

'."\n"; } else { /* * cette fonction sert à nettoyer et enregistrer un texte */ function Rec($text) { $text = htmlspecialchars(trim($text), ENT_QUOTES); if (1 === get_magic_quotes_gpc()) { $text = stripslashes($text); } $text = nl2br($text); return $text; }; /* * Cette fonction sert à vérifier la syntaxe d'un email */ function IsEmail($email) { $value = preg_match('/^(?:[\w\!\#\$\%\&\'\*\+\-\/\=\?\^\`\{\|\}\~]+\.)*[\w\!\#\$\%\&\'\*\+\-\/\=\?\^\`\{\|\}\~]+@(? Smiley decu ? Smiley decu ?:[a-zA-Z0-9_](?:[a-zA-Z0-9_\-](?!\.)){0,61}[a-zA-Z0-9_-]?\.)+[a-zA-Z0-9_](?:[a-zA-Z0-9_\-](?!$)){0,61}[a-zA-Z0-9_]?)|(?:
(? Smiley decu ?:[01]?\d1,2|2[0−4]\d|25[0−5])\.)3(?:[01]?\d1,2|2[0−4]\d|25[0−5])
))$/', $email); return (($value === 0) || ($value === false)) ? false : true; } // formulaire envoyé, on récupère tous les champs. $forme = (isset($_POST['forme'])) ? Rec($_POST['forme']) : ''; $nom = (isset($_POST['nom'])) ? Rec($_POST['nom']) : ''; $adresse = (isset($_POST['adresse'])) ? Rec($_POST['adresse']) : ''; $CodePostal = (isset($_POST['CodePostal'])) ? Rec($_POST['CodePostal']) : ''; $Ville = (isset($_POST['Ville'])) ? Rec($_POST['Ville']) : ''; $Tel = (isset($_POST['Tel'])) ? Rec($_POST['Tel']) : ''; $email = (isset($_POST['email'])) ? Rec($_POST['email']) : ''; $nom1 = (isset($_POST['nom1'])) ? Rec($_POST['nom1']) : ''; $prenom = (isset($_POST['prenom'])) ? Rec($_POST['prenom']) : ''; $adresse1 = (isset($_POST['adresse1'])) ? Rec($_POST['adresse1']) : ''; $CodePostal1 = (isset($_POST['CodePostal1'])) ? Rec($_POST['CodePostal1']) : ''; $Ville1 = (isset($_POST['Ville1'])) ? Rec($_POST['Ville1']) : ''; $Tel1 = (isset($_POST['Tel1'])) ? Rec($_POST['Tel1']) : ''; $date = (isset($_POST['date'])) ? Rec($_POST['date']) : ''; $nomdelasalle = (isset($_POST['nomdelasalle'])) ? Rec($_POST['nomdelasalle']) : ''; $adresse2 = (isset($_POST['adresse2'])) ? Rec($_POST['adresse2']) : ''; $CodePostal2 = (isset($_POST['CodePostal2'])) ? Rec($_POST['CodePostal2']) : ''; $Ville2 = (isset($_POST['Ville2'])) ? Rec($_POST['Ville2']) : ''; // On va vérifier les variables et l'email ... $email = (IsEmail($email)) ? $email : ''; // soit l'email est vide si erroné, soit il vaut l'email entré if (($nom != '') && ($adresse != '') && ($CodePostal != '')($Ville != '') && ($Tel != '') && ($email != '') && ($nom1 != '')($prenom != '') && ($adresse1 != '') && ($CodePostal1 != '') && ($Ville1 != '')($Tel1 != '') && ($date != '') && ($nomdelasalle != '') && ($adresse2 != '') && ($CodePostal2 != '') && ($Ville2 != '')) { // les 4 variables sont remplies, on génère puis envoie le mail $headers = 'MIME-Version: 1.0' . "\r\n"; $headers .= 'From:'.$nom.' <'.$email.'>' . "\r\n" . 'Reply-To:'.$email. "\r\n" . 'X-Mailer Smiley langue HP/'.phpversion(); // envoyer une copie au visiteur ? if ($copie == 'oui') { $cible = $destinataire.','.$email; } else { $cible = $destinataire; }; // Remplacement de certains caractères spéciaux $message = str_replace("'","'",$message); $message = str_replace("’","'",$message); $message = str_replace(""",'"',$message); $message = str_replace('
','',$message); $message = str_replace('
','',$message); $message = str_replace("<","<",$message); $message = str_replace(">",">",$message); $message = str_replace("&","&",$message); // Envoi du mail if (mail($cible, $objet, $message, $headers)) { echo '

'.$message_envoye.'

'."\n"; } else { echo '

'.$message_non_envoye.'

'."\n"; }; } else { // une des 3 variables (ou plus) est vide ... echo '

'.$message_formulaire_invalide.' Retour au formulaire

'."\n"; }; }; // fin du if (!isset($_POST['envoi'])) if (($err_formulaire) || (!isset($_POST['envoi']))) { }; ?>



Code source :



PHP





<?php



//Ecrivez votre adresse e-mail entre les guillemets

$destinataire='client-conseil@hotmail.fr';



// copie ? (envoie une copie au visiteur)

$copie = 'oui'; // 'oui' ou 'non'



// Messages de confirmation du mail

$message_envoye = "Votre message nous est bien parvenu !";

$message_non_envoye = "L'envoi du mail a échoué, veuillez réessayer SVP.";

// Messages d'erreur du formulaire

$message_erreur_formulaire = "Vous devez d'abord <a href=\"Formulaire.html\">envoyer le formulaire</a>.";

$message_formulaire_invalide = "Vérifiez que tous les champs soient bien remplis et que l'email soit sans erreur.";

// on teste si le formulaire a été soumis

if (!isset($_POST['envoi']))

{

// formulaire non envoyé

echo '<p>'.$message_erreur_formulaire.'</p>'."\n";

}

else

{



/*

* cette fonction sert à nettoyer et enregistrer un texte

*/

function Rec($text)

{

$text = htmlspecialchars(trim($text), ENT_QUOTES);

if (1 === get_magic_quotes_gpc())

{

$text = stripslashes($text);

}

$text = nl2br($text);

return $text;

};

/*

* Cette fonction sert à vérifier la syntaxe d'un email

*/

function IsEmail($email)

{

$value = preg_match('/^(?:[\w\!\#\$\%\&\'\*\+\-\/\=\?\^\`\{\|\}\~]+\.)*[\w\!\#\$\%\&\'\*\+\-\/\=\?\^\`\{\|\}\~]+@(? [decu]? [decu]?:[a-zA-Z0-9_](?:[a-zA-Z0-9_\-](?!\.)){0,61}[a-zA-Z0-9_-]?\.)+[a-zA-Z0-9_](?:[a-zA-Z0-9_\-](?!$)){0,61}[a-zA-Z0-9_]?)|(?:
(? [decu]?:[01]?\d1,2|2[0&#8722;4]\d|25[0&#8722;5])\.)3(?:[01]?\d1,2|2[0&#8722;4]\d|25[0&#8722;5])
))$/', $email);

return (($value === 0) || ($value === false)) ? false : true;

}



// formulaire envoyé, on récupère tous les champs.

$forme   = (isset($_POST['forme']))   ? Rec($_POST['forme'])     : '';

$nom     = (isset($_POST['nom']))     ? Rec($_POST['nom'])     : '';

$adresse = (isset($_POST['adresse'])) ? Rec($_POST['adresse'])   : '';

$CodePostal = (isset($_POST['CodePostal'])) ? Rec($_POST['CodePostal'])   : '';

$Ville = (isset($_POST['Ville'])) ? Rec($_POST['Ville'])   : '';

$Tel = (isset($_POST['Tel'])) ? Rec($_POST['Tel'])   : '';

$email   = (isset($_POST['email']))   ? Rec($_POST['email'])   : '';

$nom1     = (isset($_POST['nom1']))     ? Rec($_POST['nom1'])     : '';

$prenom   = (isset($_POST['prenom']))   ? Rec($_POST['prenom'])   : '';

$adresse1 = (isset($_POST['adresse1'])) ? Rec($_POST['adresse1'])   : '';

$CodePostal1 = (isset($_POST['CodePostal1'])) ? Rec($_POST['CodePostal1'])   : '';

$Ville1 = (isset($_POST['Ville1'])) ? Rec($_POST['Ville1'])   : '';

$Tel1 = (isset($_POST['Tel1'])) ? Rec($_POST['Tel1'])   : '';

$date   = (isset($_POST['date']))   ? Rec($_POST['date'])   : '';

$nomdelasalle = (isset($_POST['nomdelasalle'])) ? Rec($_POST['nomdelasalle']) : '';

$adresse2 = (isset($_POST['adresse2'])) ? Rec($_POST['adresse2'])   : '';

$CodePostal2 = (isset($_POST['CodePostal2'])) ? Rec($_POST['CodePostal2'])   : '';

$Ville2 = (isset($_POST['Ville2'])) ? Rec($_POST['Ville2'])   : '';

// On va vérifier les variables et l'email ...

$email = (IsEmail($email)) ? $email : ''; // soit l'email est vide si erroné, soit il vaut l'email entré

if (($nom != '') && ($adresse != '') && ($CodePostal != '')($Ville != '') && ($Tel != '') && ($email != '') && ($nom1 != '')($prenom != '') && ($adresse1 != '') && ($CodePostal1 != '') && ($Ville1 != '')($Tel1 != '') && ($date != '') && ($nomdelasalle != '') && ($adresse2 != '') && ($CodePostal2 != '') && ($Ville2 != ''))

{

// les 4 variables sont remplies, on génère puis envoie le mail

$headers  = 'MIME-Version: 1.0' . "\r\n";

$headers .= 'From:'.$nom.' <'.$email.'>' . "\r\n" .

'Reply-To:'.$email. "\r\n" .

'X-Mailer [langue]HP/'.phpversion();

// envoyer une copie au visiteur ?

if ($copie == 'oui')

{

$cible = $destinataire.','.$email;

}

else

{

$cible = $destinataire;

};

// Remplacement de certains caractères spéciaux

$message = str_replace("&#039;","'",$message);

$message = str_replace("&#8217;","'",$message);

$message = str_replace("&quot;",'"',$message);

$message = str_replace('<br>','',$message);

$message = str_replace('<br />','',$message);

$message = str_replace("&lt;","<",$message);

$message = str_replace("&gt;",">",$message);

$message = str_replace("&amp;","&",$message);

// Envoi du mail

if (mail($cible, $objet, $message, $headers))

{

echo '<p>'.$message_envoye.'</p>'."\n";

}

else

{

echo '<p>'.$message_non_envoye.'</p>'."\n";

};

}

else

{

// une des 3 variables (ou plus) est vide ...

echo '<p>'.$message_formulaire_invalide.' <a href="Formulaire.html">Retour au formulaire</a></p>'."\n";

};

}; // fin du if (!isset($_POST['envoi']))





if (($err_formulaire) || (!isset($_POST['envoi'])))

{



};

?>






HTML



<!DOCTYPE html>

<html>

  <head>

    <title>My/Salle.com</title>

    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />

<link rel="stylesheet" href="Index-style.css" type="text/css" /> 

  </head>

  <body>

  <div id="page">

       <header id="header" class="header" role="banner">

  <a id="logo" class="header__logo" rel="home" title="Accueil" href="index.html">

             <img class="header__logo-image" alt="Accueil" src="CSS/Images/Logo.jpg">

       </a>

  </header>

  <div id="main">

<div id="content1" class="column" role="main">

           <h1>Formulaire de location à remplir obligatoirement</h1>

<div id="coordonnees" class="column" role="main">

             <p class="titre-coord">LA STRUCTURE</p>

<form method="post" action="envoi.php">

<p class="forme"><label for="forme">Forme Juridique</label> : <input type="text" name="forme"  tabindex="1"  placeholder="" required/></p> 

<p class="Nom"><label for="nom">Nom</label> : <input type="text" name="nom" placeholder="Entrez votre nom" required/></p>

<p class="adresse"><label for="adresse">Adresse</label> : <input type="text" name="adresse"  tabindex="2"  placeholder="Entrez votre adresse"required/> </p>

<p class="code"><label for="CodePostal">Code Postal</label> : <input type="text" name="CodePostal"  tabindex="3"  placeholder="Code Postal"required/> </p>

<p class="ville"><label for="Ville">Ville</label> : <input type="text" name="Ville"  tabindex="4"  placeholder="Ville"required/> </p>

<p class="telephone"><label for="Tel">Tél</label> : <input type="text" name="Tel"  tabindex="5"  placeholder="Tél"required/> </p>

<p class="emailBis"><label for="email">Email</label> : <input type="email" name="email"  tabindex="6"  placeholder="Entrez une adresse valide"required/></p>

             <p class="titre-coord-orga">ORGANISATEUR</p>

<p class="Nom1"><label for="nom1">Nom</label> : <input type="text" name="nom1"  tabindex="7"  placeholder="Entrez votre nom" required/></p>

<p class="prenom"><label for="prenom">Prénom</label> : <input type="text" name="prenom"  tabindex="8"  placeholder="Entrez votre prénom"required/> </p>

<p class="adresse1"><label for="adresse1">Adresse</label> : <input type="text" name="adresse1"  tabindex="9"  placeholder="Entrez votre adresse"required/> </p>

<p class="Code1"><label for="CodePostal1">Code Postal</label> : <input type="text" name="CodePostal1"  tabindex="10"  placeholder="Ville"required/> </p>

<p class="ville1"><label for="Ville1">Ville</label> : <input type="text" name="Ville1"  tabindex="11"  placeholder="Code Postal"required/> </p>

<p class="telephone1"><label for="Tel1">Tél</label> : <input type="text" name="Tel1"  tabindex="12"  placeholder="Ville"required/> </p>  

             <p class="titre-coord-events">LIEU ET DATE DE L'EVENEMENT</p>    

<p class="date"><label for="date">Date de l'évènement</label> : <input type="text" name="date"  tabindex="13"  placeholder="Date"required/> </p>

<p class="nomdelasalle"><label for="nomdelasalle">Nom de la salle</label> : <input type="text" name="nomdelasalle"  tabindex="14"  placeholder="Nom de la Salle"required/> </p>

<p class="adresse2"><label for="adresse2">Adresse</label> : <input type="text" name="adresse2"  tabindex="15"  placeholder="Adresse de la salle"required/> </p>

<p class="Code2"><label for="CodePostal2">Code Postal</label> : <input type="text" name="CodePostal2"  tabindex="16"  placeholder="Code Postal"required/> </p>

<p class="ville2"><label for="Ville2">Ville</label> : <input type="text" name="Ville2"  tabindex="17"  placeholder="Ville"required/> </p>

<p class="declare"> <input type="radio" name="declara" value="1">Je déclare avoir pris connaissance et accepte 

<a target="_blank" >les conditions générales de location du TPE.</a></p>

<form target="_top" method="post" action="https://www.paypal.com/cgi-bin/webscr">

<input type="hidden" value="_s-xclick" name="cmd"/>

<input type="hidden" value="FBLV5H8NDRMH4" name="hosted_button_id"/>

<input type="submit" name="envoi" value="Valider" tabindex="17" border="0" alt="PayPal - la solution de paiement en ligne la plus simple et la plus sécurisée !" name="submit" src="https://www.paypalobjects.com/fr_FR/FR/i/btn/btn_paynowCC_LG.gif"/>

</form>

</form>

</div>

   </div>

   </div>

<footer id="footer" class="region-footer">

<ul class="navbar">

                 <li><a href="apropos.html">A propos</a>

                 <li><a href="ConditionsGenerales.html">Conditions generales</a>

                 <li><a href="MentionsLegales.html">Montions legales</a>

</footer>

</ul>

</div>

  </body>

</html>


Merci bien à qui m'aidera
Modifié par SebGraph95 (30 Apr 2014 - 00:09)
Ton code est tellement mal optimisé, c'est une horreur...

Je pense que tu devrais revoir tes bases PHP ça résoudra ton problème en plus de t'indiquer certaines astuces de programmation.
Modérateur
Salut,

tsakl a écrit :
Ton code est tellement mal optimisé, c'est une horreur...

Je pense que tu devrais revoir tes bases PHP ça résoudra ton problème en plus de t'indiquer certaines astuces de programmation.



+1. Mais surtout, avant de vouloir faire du php ou autres langages serveur, le html doit être selon moi impeccable.

Ton html, c'est du grand n'importe quoi. mélange xhtml avec html 5. Tu as une mauvaise connaissance du langage (les bases). Il y a de grossières erreurs. (form, p, class (ssss....), tab-index, absence de sémantique....)

Au passage, corrige les fautes d'or taux graff dans ton formulaire. En Français, on respecte les accents sur les lettres en majuscule. Le "ç" s'applique également à cette règle.
Modifié par niuxe (01 May 2014 - 23:45)