enroc
samedi 21 mai 2005 à 12:04
Salut, j'ai un site hébergé sur free, avec un formulaire de contact. Voici le code HTML que j'utilise, ainsi que le code PHP. J'utilise la fonction mail() de PHP, qui est limité quant au nombre d'envoi. Si tu prévois d'envoyer plein de mails depuis ton site, cela ne suffira pas

. Voici donc d'abord le formulaire en HTML :
CODE
<html>
<head>
<style type="text/css">
body {font-size:12px;font-family:sans-serif}
form label{display:block;float:left;clear:left;width:100px;text-align:right;vertical-align:top;margin:5px 0}
#userInput textarea,
#userInput input {margin:5px 2px;border:1px solid #000;vertical-align:top}
#userInput textarea {overflow:auto}
#formFooter {margin-left:100px}
#formFooter input {margin:5px 2px;}
</style>
</head>
<body>
<form action="sendEmail.php" method="post">
<p id="userInput">
<label for="name">Vous êtes : </label>
<input type="text" name="name" id="name"/>
<br />
<label for="email">Votre email : </label>
<input type="text" name="email" id="email"/>
<br />
<label for="subject">Sujet : </label>
<input type="text" id="subject" name="subject"/>
<br />
<label for="body">Message : </label>
<textarea name="body" id="body" rows="10" cols="40"></textarea>
</p>
<p id="formFooter">
<input type="submit" value="Envoyer" />
</p>
</form>
</body>
</html>
et le fichier sendEmail.php
CODE
<?php
/* Je vérifie le script côté serveur uniquement,
* seul le champ message (body) doit être rempli */
if(isset($_POST["email"]))
{
/* La fonction qui envoie le mail :
* mail(destinataire, sujet, message, autres informations))
* ici l'entete est composée du champ FROM et x-Mailer, et est une chaine de caractère
* L'email ainsi envoyé ne correspond pas tout à fait aux normes,
* mais ça marche avec mon compte email, alors je ne suis pas allé plus loin;) */
if($_POST["body"]!="" && mail("destinataire_AT_exemple.com", $_POST["subject"], $_POST["body"], "From: ".$_POST["name"]." <".$_POST["email"].">\nX-Mailer: PHP/ . $phpversion()"))
{
$response = "<p>Votre message a bien été envoyé</p>\n";
}
else if($_POST["body"] =="")
$response = "<p>Vous devez au moins avoir un message !</p>\n";
else
$response = "<p>Une erreur est survenue, veuillez envoyer un email à corentin chez elicoz point org pour me contacter.</p><p>An error occured, please send an email to corentin at elicoz dot org to contact me.</p>\n";
/* La réponse est intégrée dans le fichier contact-response.html, puis affichée */
echo preg_replace("/RESPONSE/", $response, join("",file("contact-response.html")));
exit;
}
?>
Je réponds un peu à côté de la question, mais tu cherches bien à envoyer un email ? D'autre part je ne vois pas trop ce que tu entends par
CITATION
y a t'il un moyen que le formulaire sois envoyer sans kil y a ai marqué," ce formulaire va etre envoyer par mail discret..."
J'espère que ce post te sera utile