C'est bon! J'ai trouvé un autre code et l'ai implanté dans le fichier index et ai donc modifié l'extension en .php et ça fonctionne.
Evidement, une réponse mène à une autre question...
Le code en question a une fonctionnalité qui liste les erreurs (par exemple un champ non rempli) au dessus du formulaire. Comment faire pour changer cet emplacement (si c'est possible)?
Aussi, est-ce que cette ligne a une réelle utilité ou est-ce qu'elle peut être enlevée?
Code : Tout sélectionner
$contenu = '<html><head><title>La Main Magique</title></head><body>';
Voici le code général:
<!-- DEBUT CODE PHP FORMULAIRE DE CONTACT -->
<?php
// S'il y des données de postées
if ($_SERVER['REQUEST_METHOD']=='POST') {
// Code PHP pour traiter l'envoi de l'email
$nombreErreur = 0; // Variable qui compte le nombre d'erreur
// Définit toutes les erreurs possibles
if (!isset($_POST['email'])) { // Si la variable "email" du formulaire n'existe pas (il y a un problème)
$nombreErreur++; // On incrémente la variable qui compte les erreurs
$erreur1 = '<p>Il y a un problème avec la variable "email".</p>';
} else { // Sinon, cela signifie que la variable existe (c'est normal)
if (empty($_POST['email'])) { // Si la variable est vide
$nombreErreur++; // On incrémente la variable qui compte les erreurs
$erreur2 = '<p>Vous avez oublié de donner votre email.</p>';
} else {
if (!filter_var($_POST['email'], FILTER_VALIDATE_EMAIL)) {
$nombreErreur++; // On incrémente la variable qui compte les erreurs
$erreur3 = '<p>Cet email ne ressemble pas un email.</p>';
}
}
}
if (!isset($_POST['message'])) {
$nombreErreur++;
$erreur4 = '<p>Il y a un problème avec la variable "message".</p>';
} else {
if (empty($_POST['message'])) {
$nombreErreur++;
$erreur5 = '<p>Vous avez oublié de donner un message.</p>';
}
}
if ($nombreErreur==0) { // S'il n'y a pas d'erreur
// Récupération des variables et sécurisation des données
$nom = htmlentities($_POST['nom']); // htmlentities() convertit des caractères "spéciaux" en équivalent HTML
$email = htmlentities($_POST['email']);
$message = htmlentities($_POST['message']);
// Variables concernant l'email
$destinataire = '; // Adresse email du webmaster
$sujet = 'La Main Magique - Formulaire de contact'; // Titre de l'email
$contenu = '<html><head><title>La Main Magique</title></head><body>';
$contenu .= '<p>Bonjour, vous avez reçu un message à partir de votre site web.</p>';
$contenu .= '<p><strong>Nom</strong>: '.$nom.'</p>';
$contenu .= '<p><strong>Email</strong>: '.$email.'</p>';
$contenu .= '<p><strong>Message</strong>: '.$message.'</p>';
$contenu .= '</body></html>'; // Contenu du message de l'email
// Pour envoyer un email HTML, l'en-tête Content-type doit être défini
$headers = 'MIME-Version: 1.0'."\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1'."\r\n";
@mail($destinataire, $sujet, $contenu, $headers); // Fonction principale qui envoi l'email
echo '<h2>Message envoyé!</h2>'; // Afficher un message pour indiquer que le message a été envoyé
} else { // S'il y a un moins une erreur
echo '<div style="border:1px solid #ff0000; padding:5px;">';
echo '<p style="color:#ff0000;">Désolé, il y a eu '.$nombreErreur.' erreur(s). Voici le détail des erreurs:</p>';
if (isset($erreur1)) echo '<p>'.$erreur1.'</p>';
if (isset($erreur2)) echo '<p>'.$erreur2.'</p>';
if (isset($erreur3)) echo '<p>'.$erreur3.'</p>';
if (isset($erreur4)) echo '<p>'.$erreur4.'</p>';
if (isset($erreur5)) echo '<p>'.$erreur5.'</p>';
echo '</div>';
}
}
?>
<!-- FIN CODE PHP FORMULAIRE DE CONTACT -->
<!-- DEBUT CODE HTML FORMULAIRE DE CONTACT -->
<div class="container">
<form method="post" action="<?php echo strip_tags($_SERVER['REQUEST_URI']); ?>">
<label>Nom</label>
<input type="text" name="nom" size="30" placeholder="Prénom Nom">
<label>Mail</label>
<input type="text" name="email" size="30" placeholder="[email protected]">
<label>Message</label>
<textarea name="message" cols="60" rows="10" placeholder="Votre message..."></textarea>
<input type="submit" name="submit" value="Envoyer" />
</form>
</div>
<!-- FIN CODE HTML FORMULAIRE DE CONTACT -->
Et merci de m'avoir fait penser à retirer l'adresse mail
C'est bon! J'ai trouvé un autre code et l'ai implanté dans le fichier index et ai donc modifié l'extension en .php et ça fonctionne.
Evidement, une réponse mène à une autre question...
Le code en question a une fonctionnalité qui liste les erreurs (par exemple un champ non rempli) au dessus du formulaire. Comment faire pour changer cet emplacement (si c'est possible)?
Aussi, est-ce que cette ligne a une réelle utilité ou est-ce qu'elle peut être enlevée?
[code]$contenu = '<html><head><title>La Main Magique</title></head><body>';[/code]
Voici le code général:
[PHP]
<!-- DEBUT CODE PHP FORMULAIRE DE CONTACT -->
<?php
// S'il y des données de postées
if ($_SERVER['REQUEST_METHOD']=='POST') {
// Code PHP pour traiter l'envoi de l'email
$nombreErreur = 0; // Variable qui compte le nombre d'erreur
// Définit toutes les erreurs possibles
if (!isset($_POST['email'])) { // Si la variable "email" du formulaire n'existe pas (il y a un problème)
$nombreErreur++; // On incrémente la variable qui compte les erreurs
$erreur1 = '<p>Il y a un problème avec la variable "email".</p>';
} else { // Sinon, cela signifie que la variable existe (c'est normal)
if (empty($_POST['email'])) { // Si la variable est vide
$nombreErreur++; // On incrémente la variable qui compte les erreurs
$erreur2 = '<p>Vous avez oublié de donner votre email.</p>';
} else {
if (!filter_var($_POST['email'], FILTER_VALIDATE_EMAIL)) {
$nombreErreur++; // On incrémente la variable qui compte les erreurs
$erreur3 = '<p>Cet email ne ressemble pas un email.</p>';
}
}
}
if (!isset($_POST['message'])) {
$nombreErreur++;
$erreur4 = '<p>Il y a un problème avec la variable "message".</p>';
} else {
if (empty($_POST['message'])) {
$nombreErreur++;
$erreur5 = '<p>Vous avez oublié de donner un message.</p>';
}
}
if ($nombreErreur==0) { // S'il n'y a pas d'erreur
// Récupération des variables et sécurisation des données
$nom = htmlentities($_POST['nom']); // htmlentities() convertit des caractères "spéciaux" en équivalent HTML
$email = htmlentities($_POST['email']);
$message = htmlentities($_POST['message']);
// Variables concernant l'email
$destinataire = '; // Adresse email du webmaster
$sujet = 'La Main Magique - Formulaire de contact'; // Titre de l'email
$contenu = '<html><head><title>La Main Magique</title></head><body>';
$contenu .= '<p>Bonjour, vous avez reçu un message à partir de votre site web.</p>';
$contenu .= '<p><strong>Nom</strong>: '.$nom.'</p>';
$contenu .= '<p><strong>Email</strong>: '.$email.'</p>';
$contenu .= '<p><strong>Message</strong>: '.$message.'</p>';
$contenu .= '</body></html>'; // Contenu du message de l'email
// Pour envoyer un email HTML, l'en-tête Content-type doit être défini
$headers = 'MIME-Version: 1.0'."\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1'."\r\n";
@mail($destinataire, $sujet, $contenu, $headers); // Fonction principale qui envoi l'email
echo '<h2>Message envoyé!</h2>'; // Afficher un message pour indiquer que le message a été envoyé
} else { // S'il y a un moins une erreur
echo '<div style="border:1px solid #ff0000; padding:5px;">';
echo '<p style="color:#ff0000;">Désolé, il y a eu '.$nombreErreur.' erreur(s). Voici le détail des erreurs:</p>';
if (isset($erreur1)) echo '<p>'.$erreur1.'</p>';
if (isset($erreur2)) echo '<p>'.$erreur2.'</p>';
if (isset($erreur3)) echo '<p>'.$erreur3.'</p>';
if (isset($erreur4)) echo '<p>'.$erreur4.'</p>';
if (isset($erreur5)) echo '<p>'.$erreur5.'</p>';
echo '</div>';
}
}
?>
<!-- FIN CODE PHP FORMULAIRE DE CONTACT -->
[/PHP]
[html]
<!-- DEBUT CODE HTML FORMULAIRE DE CONTACT -->
<div class="container">
<form method="post" action="<?php echo strip_tags($_SERVER['REQUEST_URI']); ?>">
<label>Nom</label>
<input type="text" name="nom" size="30" placeholder="Prénom Nom">
<label>Mail</label>
<input type="text" name="email" size="30" placeholder="
[email protected]">
<label>Message</label>
<textarea name="message" cols="60" rows="10" placeholder="Votre message..."></textarea>
<input type="submit" name="submit" value="Envoyer" />
</form>
</div>
<!-- FIN CODE HTML FORMULAIRE DE CONTACT -->
[/html]
Et merci de m'avoir fait penser à retirer l'adresse mail ;)