Formulaire php
Martial81000 -
Bonjour; je suis debutant en PHP, et à 61 ans je me lance.
Je voudrais savoir si mon code est bon car je ne peux le tester actuellement.
Merci de votre compréhension à tous.
Cdlt Martial
MON FORM DANS LE HTML
<form name="contact_form" method="post" action="">
<table width="500">
<tr>
<td valign="top">
<label for="nom">Nom *</label>
</td>
<td valign="top">
<input type="text" name="nom" maxlength="50" size="30" value="<?php if (
isset($_POST['nom'])) echo htmlspecialchars($_POST['nom']);?>">
</td>
</tr>
<tr>
<td valign="top"">
<label for="prenom">Prénom *</label>
</td>
<td valign="top">
<input type="text" name="prenom" maxlength="50" size="30" value="<?php if
(isset($_POST['prenom'])) echo htmlspecialchars($_POST['prenom']);?>">
</td>
</tr>
<tr>
<td valign="top">
<label for="email">Email Addresse *</label>
</td>
<td valign="top">
<input type="text" name="email" maxlength="80" size="30" value="<?php if
(isset($_POST['email'])) echo htmlspecialchars($_POST['email']);?>">
</td>
</tr>
<tr>
<td valign="top">
<label for="telephone">Téléphone</label>
</td>
<td valign="top">
<input type="text" name="telephone" maxlength="30" size="30" value="
<?php if (isset($_POST['telephone'])) echo htmlspecialchars($_POST['telephone'])
;?>">
</td>
</tr>
<tr>
<td valign="top">
<label for="commentaire">Commentaire *</label>
</td>
<td valign="top">
<textarea name="commentaire" cols="28" rows="10"><?php if (isset($_POST[
'commentaire'])) echo htmlspecialchars($_POST['commentaire']);?></textarea>
</td>
</tr>
<tr>
<td colspan="2" style="text-align:center">
<input type="submit" value=" Envoyer ">
</td>
</tr>
</table>
</form>
<?php
if(isset($_POST['email'])) {
// ENTETE DE L'E_MAIL
$email_to = "***@***";
$email_subject = "E_mail en provenance de votre site";
function died($error) {
// AFFICHAGE DES ERREURS
echo "Désolé, mais des erreurs ont été détectées.<br /><br />";
echo "Ces erreurs apparaissent ci-dessous.<br /><br />";
echo $error."<br /><br />";
echo "Merci de bien vouloir les corriger.<br /><br />";
die();
}
// SI LES DONNEES ATTENDUES EXISTENT
if(!isset($_POST['nom']) ||
!isset($_POST['prenom']) ||
!isset($_POST['email']) ||
!isset($_POST['telephone']) ||
!isset($_POST['commentaire'])) {
died(
'Désolé, votre formulaire semble poser des problèmes!!!<br />';
}
$nom = $_POST['nom']; // required
$prenom = $_POST['prenom']; // required
$email = $_POST['email']; // required
$telephone = $_POST['telephone']; // not required
$commentaire = $_POST['commentaire']; // required
$error_message = "";
$email_exp = '/^[A-Za-z0-9._%-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4}$/';
if(!preg_match($email_exp,$email)) {
$error_message .=
'L\'adresse e-mail que vous avez entrée ne semble pas valide!!!<br />';
}
// CARACTERES ALPHANUMERIQUES + le point et le tiret 6
$string_exp = "/^[A-Za-z0-9 .'-]+$/";
if(!preg_match($string_exp,$nom)) {
$error_message .=
'Le nom que vous avez entré ne semble pas valide!!!<br />';
}
if(!preg_match($string_exp,$prenom)) {
$error_message .=
'Le prénom que vous avez entré ne semble pas valide!!!<br />';
}
if(strlen($commentaire) < 2) {
$error_message .=
'Le commentaire que vous avez entré ne semble pas valide!!!<br />';
}
if(strlen($error_message) > 0) {
died($error_message);
}
$email_message = "<html><body>";
$email_message .= "<img src="https://13semaines.com/assets/img/logo-5.png" alt="Logo">";
$email_message .= "<p>Contenu du mail</p>";
$email_message .= "Détail.\n\n";
$email_message .= "Nom: ".$nom."\n";
$email_message .= "Prenom: ".$prenom."\n";
$email_message .= "Email: ".$email."\n";
$email_message .= "Telephone: ".$telephone."\n";
$email_message .= "Commentaire: ".$commentaire."\n";
$email_message .= "</body></html>
// CREATION MAIL HEADERS
$headers = "From: .$email."\r\n";
<!-- $headers = 'From: texte <'.$email.">\r\n". (mettre cette ligne si la ligne du dessus ne marche pas) -->
$headers .= "Reply-To: .$email."\r\n";
$headers .= "MIME-Version: 1.0\r\n";
$headers .= "Content-Type: text/html; charset=UTF-8\r\n";
$headers .= "X-Mailer: PHP/" . phpversion();
mail($email_to, $email_subject, $email_message, $headers);
?>
// MESSAGE AVEC SUCCES
Merci de m'avoir contacté, votre mail m'est bien parvenu: Je vous recontacterai très bientôt!!!.
<?php
}
- Formulaire php
- Whatsapp formulaire opposition - Guide
- Formulaire de réclamation facebook - Guide
- Formulaire de reclamation instagram - Guide
- Easy php - Télécharger - Divers Web & Internet
- Confirmer le nouvel envoi du formulaire err_cache_miss - Forum Webmastering
2 réponses
Bonjour,
Après une rapide lecture je ne vois pas d'anomalie dans ce code.
Toutefois, je te recommande d'appliquer les conseils donnés ici https://forums.commentcamarche.net/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code
(concernant la récupération "propre" des variables AVANT de les utiliser ainsi que l'ordre du code ( en prenant l'habitude de placer le maximum de code php AVANT le code html )
Reviens nous voir lorsque tu auras modifié ton code, l'avoir testé et si tu rencontres des soucis...
PS: A l'avenir, merci de poster dans le bon forum 'PHP' et d'utiliser le bouton prévue pour poster du code (icone se trouvant dans la barre de menu lorsque tu rédiges un message)