|
|
|
|
Bonjour,
Je suis un débutant (un vrai de vrai débutant) en matière de conception de site internet.
j'ai commencé à concevoir mon site internet via Dreamweaver. J'ai ajouté dans ma page internet un formulaire de contact.
Le formulaire de contact contient les élements suivants:
NOM
Prénom
Adresse email
Description du problème
Pièce jointe 1
Pièce jointe 2
Pièce jointe 3
Et un bouton envoyer. Dans le code HTLM, au niveau de l'action j'ai mis mailto: et une adresse email.
Malheureusement mon formulaire internet ne fonctionne pas. Je ne comprends pas pourquoi.
A chaque fois que que j'appuie sur ENVOYER, ma messagere OUTLOOK S'ouvre. Impossible d'envoyer le contenu du formulaire depuis la page internet.
QUe faire?
Pourriez vous svp m'expliquer (idéalement me donner le code à ajouter dans ma page et où le placer) comment réaliser le formulaire que je souhaite de la façon la plus simple possible?
Je souhaiterais aussi avoir une page de remerciement (une fois que l'utilisateur a appuyé sur envoyer). Comment faire?
Sur internet j'ai trouvé une multitude de sites qui traitent de mon problème...cependant je ne comprends jamais les solutions. On me parle de PHP etc..
Serait il possible d'avoir une explication ULTRA SIMPLE (digne d'une explication pour un enfant de 5 ans :-) lol)
En vous remerciant d'avance
Configuration: Windows XP Internet Explorer 6.0
Bonjour,
|
Répondre à Schumi513
|
Remplace ton formulaire (de <form> à </form>) par ce script : <?php
if(!empty($_POST))
{
$error = 0;
$text_erreur = '';
if(empty($_POST['nom'])) {
$error++;
$text_erreur .= 'Le champs "Nom" est vide<br/>';
}
if(empty($_POST['prenom'])) {
$error++;
$text_erreur .= 'Le champs "Prénom" est vide<br/>';
}
if(!preg_match("#^[a-z0-9._-]+@[a-z0-9._-]{2,}\.[a-z]{2,4}$#i", $_POST['mail']))
{
$error++;
$text_erreur .= 'L\'adresse e-mail est invalide<br/>';
}
if(empty($_POST['description'])) {
$error++;
$text_erreur .= 'Le champs "Description" est vide<br/>';
}
if($error > 0)
{
echo 'Il y a '.$error.' erreur(s) :<br/>'.$text_erreur ;
}
else
{
$Name = stripslashes($_POST['nom']).' '.stripslashes($_POST['prenom']) ;
$email = $_POST['mail'];
$recipient = 'dylanjan313@hotmail.com' ;
$mail_body = stripslashes($_POST['description']) ;
$subject = 'Rapport de problème' ;
$header = "From: ". $Name . " <" . $email . ">\r\n";
$mail_fonction = mail($recipient, $subject, $mail_body, $header);
//Si le mail est bien envoyé
if($mail_fonction == true)
{
echo '<p style="color:green;">Le mail a bien été envoyé.<br/></p>';
}
else
{
echo '<p style="color:red">Erreur lors de l\'envoie du mail !<br/></p>';
}
}
}
else
{
?>
<form method="post" action="">
<fieldset>
<p>
<label for="nom">Nom</label>
<input type="text" name="nom" id="nom" />
</p>
<p>
<label for="prenom">Prénom</label>
<input type="text" name="prenom" id="prenom" />
</p>
<p>
<label for="mail">Adresse e-mail</label>
<input type="text" name="mail" id="mail" />
</p>
<p>
<label for="description">Description</label>
<textarea name="description" id="description" cols="45" rows="10">Décrivez précisément le problème</textarea>
</p>
<p>
<input type="submit" value="Envoyer" />
</p>
</fieldset>
</form>
<?php
}
?>
N'oublie pas de renommer ton fichier avec l'extension .php au lieu de .html et n'essaye pas de lancer le fichier quand il est sur ton PC (ça ne fonctionne qu'une fois sur le serveur). Si je l'dis c'est que vrai sinon j'ne l'dirai pas puisque j'suis pas un menteur ;)
|
Je viens de terminé le script avec maintenant la possibilité de mettre des pièces jointes.
|
Salut avion F16,
|
Je viens de trouver l'erreur : Tu avais laisser tes balises <form> et </form> ... je ne vais pas rentrer dans les détails pour t'expliquer l'erreur que ça provoquait.
|
Aie aie aie....
|
Hello,
|
Salut avion F-16,
|
Si tu regarde +/- au milieu, tu verras :
echo '<p style="color:green;">Le mail a bien été envoyé.<br/></p>'; Il te suffit de modifier ce qu'il y a entre ' PS : Si ton message contient des apostrophes ( ' ), ajoute un anti-slashe ( \ ) devant (ex : Je m\'appelle) Les fautes présentes ci-dessus sont l'oeuvre de leur auteur respectif. Merci de ne pas les recopier ou les corriger sans l'accord de leur auteur. |