Pages : 1
#1 Le 30/06/2008, à 23:17
- hackman61
Script Formulaire php
Bonsoir, j'ai fait ça avec l'aide d'un tuto sur le net
C'est un formulmaire (jen cherche un qui fonctionne impec)
Il envoie bien un mal sur le compte mail de l'admin où le formulaire est stocké, mais le contient <> comme titre et rien dans le corps du message?!
Voici le code du scipt ::
<?php echo "<?xml version=\"1.0\" encoding=\"iso-8859-1\"?".">"; ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Contact</title>
<meta http-equiv="Content-type" content="text/html; charset=iso-8859-1" />
<style type="text/css">
<!--
body {
font-family: Verdana, Arial, Helvetica, sans-serif;
background-color: #ffffff;
font-size: 11px;
color: #000000;
margin-left: 10;
}
p, ul, ol, td {
text-align: justify;
}
.red {
color: #ff0000;
background-color: transparent;
}
.vi4 {
color: #330066;
background-color: transparent;
font-weight: bold;
}
.tour {
border: 2px solid #330066;
border-collapse: separate;
}
.unite {
background-color: #ebe7f1;
color: #000000;
}
//-->
</style></head>
<body>
<p>Cette page permet l'envoi d'un message au Docteur Alain SICHEL, Médecin
Maître-Toile du site pour : </p>
<ul>
<li>signaler une erreur sur le site (lien défectueux...),</li>
<li>faire une suggestion,</li>
<li>proposer un lien,</li>
<li>etc.</li>
</ul>
<p>Attention, nous ne répondrons pas aux questions de santé d'ordre
personnel qui ne peuvent s'aborder que dans le cadre d'une consultation médicale.<br />
<?php
function formulaire($Nom="",$Profession="",$Email="",$Message="") {
?>
</p>
<form action="<?php echo $PHP_SELF ?>" method="post">
<table border="0" class="tour" cellspacing="0" cellpadding="10" align="center">
<tr class="unite">
<td >Nom Prénom :</td>
<td width="80%"><center>
<input type="text" name="Nom" size="30" value="<?php echo trim(htmlentities($Nom)) ?>" />
</center></td>
</tr>
<tr class="unite">
<td>Profession :</td>
<td width="80%"><center>
<input type="text" name="Profession" value="<?php echo trim(htmlentities($Profession)) ?>" size="30" />
</center></td>
</tr>
<tr class="unite">
<td>E-mail :</td>
<td width="80%"><center>
<input type="text" name="Email" value="<?php echo trim(htmlentities($Email)) ?>" size="30" />
</center></td>
</tr>
<tr class="unite">
<td valign="top">Message :</td>
<td width="80%"><center>
<textarea name="Message" alt="Message" rows="10" cols="47" wrap="virtual"><?php if (ereg("[]%~#`$&|}{^[><]",$Message)) { echo "Certains caractères utilisés sont interdits";
$erreur=1; }
else {echo trim($Message); } ?></textarea>
</center></td>
</tr>
<tr class="unite">
<td> </td>
<td width="80%"> <center>
<br />
<input type="submit" name="Submit" value="Envoi" alt="Envoi" style="background-color:#00ff00" title="Envoi de votre message" onmouseover="this.style.color='#ff0000'" onmouseout="this.style.color='#000000'" onmousedown="this.style.color='#ff9900'" />
</center></td>
</tr>
</table>
<?php
}
if(!isset($Nom)) {
formulaire();
}
else {
$vNom=trim(htmlentities($_POST["Nom"]));
$vProfession=trim(htmlentities($_POST["Profession"]));
$vMessage=trim($_POST["Message"]);
$vEmail=trim(htmlentities($_POST["Email"]));
$destinataire='administrateur@hackman61.dyndns.org';
$titre="Modèle de page Contact";
$message="Provenance : $HTTP_REFERER\n";
$message.="Adresse IP : $REMOTE_ADDR,\n";
$message.="Navigateur : $HTTP_USER_AGENT\n";
$message.="Nom : $vNom\n";
$message.="Profession : $vProfession\n";
$message.="E-mail : $vEmail\n";
$message.="Message : $vMessage\n";
if (empty($vNom) || empty($Message) || empty($Email)) {
echo "<p class='red'>Vous n'avez pas complété toutes les zones :</p>";
$erreur=1;
}
if (!eregi("^[0-9a-z]([-_.]?[0-9a-z])*@[0-9a-z]([-_.]?[0-9a-z])*\\.[a-z]{2,4}$",$vEmail) && ($erreur<>1)){
echo "<p class='red'>L'adresse e-mail n'est pas correcte :</p>";
$erreur=1;
}
if ($erreur==1) {
formulaire($Nom,$Profession,$Email,$Message);
}
else {
mail($destinataire,$titre,$message,"From: $vEmail") ;
echo "<p class='vi4'>Votre message :</p>";
echo "<ul><li>Nom : <span class='red'>" . $vNom . "</span><br />";
echo "<li>Profession : <span class='red'>" . $vProfession. "</span></li>";
echo "<li>E-mail : <span class='red'>" . $vEmail. "</span></li>";
echo "<li>Message : <span class='red'>" . $vMessage.'</span></li></ul>';
echo "<p class='vi4'>a bien été envoyé au webmestre du site. Nous vous remercions.</p>\n" ;
echo "<form name='boutons'><table border='0' cellspacing='0' cellpadding='0' width='90%' align='center'><tr><td><center>" ;
echo "<input type='button' name='accueil' alt='Accueil' value=\"Retour à la page d'accueil\" style='color:#660066;background-color:#ebe7f1' onclick=\"location.href='/index.php'\" onmouseover=\"this.style.color='#ff0000'\" onmouseout=\"this.style.color='#660066'\" onmousedown=\"this.style.color='#ff9900'\" />\n";
echo "</center></td><td><center><input type='button' name='plan' alt='Plan du site' value='Vers le plan du site' style='color:#660066;background-color:#ebe7f1' onclick=\"location.href='http://www.cyes.info/aide/plan.php'\" onmouseover=\"this.style.color='#ff0000'\" onmouseout=\"this.style.color='#660066'\" onmousedown=\"this.style.color='#ff9900'\" /></center></td></tr></table>";
}
}
?>
</form>
</body>
</html>
Ps si je suis pas dans le bon forum, dites le moi, j'ai hésité avec le forum internet
Config : Acer swift 3 : Archlinux Ryzen 5 , 16G DDR4, NVME 250G
Hors ligne
#2 Le 04/07/2008, à 16:57
- rniamo
Re : Script Formulaire php
t'as dit dans les headers que t'envoyer de l'html et pas du texte?
< Quelques un des mes programmes | Cuisine Facile (pour les gourmands) | Fast MVC for PHP >
\ ^__^
\ (o o)\_______
(___)\ )\
Hors ligne
#3 Le 04/07/2008, à 17:10
- hackman61
Re : Script Formulaire php
A tes souhaits!!! Désolé je connais pas grand chose en html(ni php d'ailleur) je fais comment pour envoyer de l'html?
Config : Acer swift 3 : Archlinux Ryzen 5 , 16G DDR4, NVME 250G
Hors ligne
#4 Le 15/07/2008, à 13:55
- Bill Gates (alias Adrien)
Re : Script Formulaire php
Bonjour
Tu sais tu n'a pas besoin de toutes ces lignes de codes il te suffit juste de récupérer les variables de ton formulaire et de les envoyer par mail.
Par exemple dans ton formulaire si tu as un champ dans lequel l’utilisateur doit rentrer son message il te suffit de lui attribuer name="message" ensuite tu récupère cette variable et tu te l’envoi par mail par exemple tu peux faire:
formulaire_contact.html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr">
<head>
<title>Contactez-Moi</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>
<body>
<form method="post" action="mail.php"/>
<div>
<label>Veuillez entrer votre nom: </label><input type="text" name="nom" /><br />
<label>Ici votre Message: </label>
<textarea name="message" rows="8" cols="35">
</textarea><br />
<input type="submit" value="envoyer"/>
</div>
</body>
</html>
mail.php
<?php
//ça c'est juste pour que l'utilisateur puisse mettre des apostrophes
if (get_magic_quotes_gpc())
{
$nom = stripslashes($_POST['nom']);
$message = stripslashes($_POST['message']);
}
else
{
$nom = $_POST['nom'];
$message = $_POST['message'];
}
//Et on attaque le message
$pour = 'TonAdresse@hotmail.fr';
$message .= ' Ce mail a été envoyé par '.$nom."\r\n\r\n";
mail($pour, $nom , $message);
echo "message envoyé";
?>
Bon bien enttendu il n'y a aucune mise en forme et CHANGE BIEN l'adresse mail que j'ai mis comme exemple (TonAdresse@hotmail.fr) et nome bien les pages comme moi message.html et mail.php
J'éspère t'avoir aidé a++ d^_^b
Pages : 1