Votre question

? Créer un formulaire de contact sur un site perso (sans www) ?

Tags :
  • Php
  • formulaire
  • Programmation
Dernière réponse : dans Programmation
5 Janvier 2011 22:42:17

Bonjour à tous !
Je lance un appel au peuple : qui pourrait me donner des tuyaux pour créer un formulaire de contact ?
Alors, en fait, ce que je veux, c'est un formulaire de contact qui n'oblige pas celui qui l'utilise à passer par une adresse mail pour envoyer le formulaire. Je m'explique : je sais comment créer un formulaire de base, qui me convient d'ailleurs très, sauf sur un point : je ne veux pas que le formulaire soit envoyé par une adresse mail. Or, la seule commande que je connais c'est < form [...] action = "mailto:..." > (j'ai mis des espaces exprès pour qu'il n'y ait pas de risque d'interpretation du HTML par la page.
Je ne veux pas de cette formule, car je pense aux neuneus dans mon genre qui ne sont pas fichu de configurer une messagerie type Outlook, ou dont l'adresse est secondaire, et donc ne sera pas utilisé par ce type de fichier (bon, à moins qu'il y ait une manip à faire, mais si c'est un utilisation basique d'Internet, il ne saura pas faire, donc = complications).
Alors, j'ai essayé d'analyser le code source de différentes pages où il y avait ce type de formulaire, et sur le site du CAVEJ (université à distance), dans le code source du formulaire, j'ai trouvé <... action = "http://... .html" > ainsi que :
< input type = " hidden " name = " url_retour" value = "http://... "/ >
Donc, j'ai essayé d'utiliser ce genre de commandes, mais sans grand succès. Je n'ai pas de message d'erreur, mais il n'y a rien qui parvient sur la page que j'ai créer exprès pour stocker les réponses.
Donc, si je résume : A L'AIDE !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Merci d'avance à tous !
Bonne continuation.

Autres pages sur : creer formulaire contact site perso www

5 Janvier 2011 22:53:21

Bonjour,

Fonction mail(); PHP

Ou tu stock les infos dans une bases de données... si tu ne veux rien recevoir sur ta messagerie!
m
0
l
6 Janvier 2011 19:48:56

Bonjour Allstar27,
Merci de ta réponse, peut-être un peu sybilline pour moi... Mais je crois que je comprends ce que tu veux dire.
Entre temps, j'ai trouvé des scripts tout fait sur le net, mais le seul que j'ai réussi à utiliser me donne ceci :
"Parse error: syntax error, unexpected T_STRING in /var/www/l/le/lep/lepostscriptum.perso.sfr.fr/public_html/traitement.php on line 15"
quand je veux envoyer le formulaire, l'adresse URL de la page étant :
http://lepostscriptum.perso.sfr.fr/traitement.php
C'est à dire a priori celle que je devais atteindre... Et bien sûr, aucun message dans la boîte de reception prévue à cette effet.
Je vais tâcher de mettre mes scripts dans un post, si quelqu'un peut me dire où sont mes erreurs...
m
0
l
Contenus similaires
6 Janvier 2011 19:51:38

Bon, voici le code source de la page qui contient le formulaire de contact :

<HTML>
<HEAD>
<TITLE>Le postscriptum - Contact
</TITLE>

<html>
<head>


<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

</head>

<BODY BGCOLOR="goldenrod">
<TABLE>
<TR>
<TD WIDTH="200" HEIGHT="100"><CENTER><IMG SRC="sigle.gif" HEIGHT="90"></CENTER></TD>
<TD WIDTH="800" HEIGHT="100" ALIGN="center" VALIGN="middle" BACKGROUND="grandebanniere.jpg"><FONT COLOR="darkturquoise" FONT FACE="CommercialScriptTwo"><H1>Pour contacter l'auteur</H1></FONT></TD>
</TR></TABLE>
<TABLE>
<TR>
<TD WIDTH="200" ALIGN="center" VALIGN="top"><A HREF="index.html">Accueil</A><BR><BR>
<A HREF="page1amouramort.html">Par Amour...</A><BR>
<A HREF="page2ombreetlumiere1.html">L'ombre et la lumière I</A><BR>
<A HREF="page3ombreetlumiere2.html">L'ombre et la lumière II</A><BR>
<A HREF="page4ombreetlumiere3.html">L'ombre et la lumière III</A><BR>
<A HREF="biographie.html">Biographie</A><BR>
<A HREF="petitesnewsenvrac.html">Petites news en vrac</A><BR>
<B>Contact</B><BR><BR></TD>
<TD WIDTH="600" ALIGN="left" VALIGN="top">Vous souhaitez contacter l'auteur, écrire à propos du site, réclamer une rubrique, ou le complément d'une rubrique, ce formulaire de contact est fait pour vous !<BR>
N'hésitez pas à vous en servir.<BR>


<form name="contact" action="http://lepostscriptum.perso.sfr.fr/traitement.php" method="post" onSubmit="return verification()">


Votre nom : <input name='nom' type='text' size='50'><br>
Votre prénom : <input name='prenom' type='text' size='50'><br>
Votre email : <input name='email' type='text' size='50'><br>
Votre message : <textarea name='texte' cols='50' rows='20'></textarea><br>
<input name='annuler' type='reset' value='Annuler'>
<input name='soumettre' type='submit' value='Envoyer'><br>

</form>




</TD>
<TD WIDTH="200" ALIGN="center" VALIGN="top"></TD>
</TABLE>



</BODY>
<script type="text/javascript" language="Javascript" >
<!--
function verification()
{
}
//-->
if(document.formulaire.nom.value == "") {
alert("Veuillez entrer votre Nom svp");
document.formulaire.nom.focus();
return false;
}
else
return true;

if(document.formulaire.prenom.value == "") {
alert("Veuillez entrer votre Prnom svp");
document.formulaire.nom.focus();
return false;
}
else
return true;

else
if(document.formulaire.email.value == "") {
alert("Veuillez entrer votre adresse electronique svp");
document.formulaire.email.focus();
return false;
}
else
if(document.formulaire.email.value.indexOf('@') == -1) {
alert("Ce n'est pas une adresse electronique, verifiez la svp");
document.formulaire.email.focus();
return false;
}



</script>

</HTML>


En sachant que je débute en programmation HTML, et donc j'ai fait du bricolage avec les fonctions "tableaux" pour obtenir la mise en page que je voulais.
Je mets le code source de la page en .php de suite
m
0
l
6 Janvier 2011 19:54:44

Et voici le code souce de la page "traitement.php" :


<?php
$adresse="lepostscriptum@sfr.fr";
$from="From: $prenom $nom<$email>\r\n";
$from.="Reply-To: $prenom $nom <$email>\n";
$from.="X-priority:3\n";
$texte="<html>";
$texte.="$texte";
$texte.="</html>";
$from.="MIME-Version: 1.0\r\n";
$from.="Content-Type: text/html";
if (mail($adresse,$sujet,$texte,$from))
echo("<center><font color=green><br><br><br><h2>Formulaire envoyé ! Je vous répondrais rapidement. Merci!</h2></font><br><a href=http://lepostscriptum.perso.sfr.fr/&gt;Cliquez ici pour revenir à l'accueil</a></center>");
else
echo("<center><font color=red><br><br><br><h2>Problème à l'envoi du mail...désolé nous ne pouvons actuellement traiter votre demande</h2></font><br>Contactez nous plus <a href="mailto:lepostscriptum@sfr.fr">classiquement</a>");
?>

En sachant que j'ai essayé avec et sans les balises de page HTML autour du code PHP, et que rien ne fonctionne.
Si quelqu'un pouvait m'expliquer où je me plante, j'aurais une reconnaissance éternelle !!!
HELP !!!!! MERCI D'AVANCE !!!
m
0
l
a c 145 L Programmation
6 Janvier 2011 21:32:52

Alors tout d'abord, $prenom, $nom, $email et $texte sont vides. Il faut utiliser $_POST['prenom'], $_POST['nom'], $_POST['email'] et $_POST['texte'].
Ensuite, $sujet est vide, ce qui risque de provoquer une erreur dans la fonction mail().
Et dernier point: ton souci est sur le lien "mailto" de ton message en cas d'erreur, il faut mettre des \ devant les ":
  1. echo("<center><font color=red><br><br><br><h2>Problème à l'envoi du mail...désolé nous ne pouvons actuellement traiter votre demande</h2></font><br>Contactez nous plus <a href=\"mailto:lepostscriptum@sfr.fr\">classiquement</a>" );
m
0
l
7 Janvier 2011 19:33:28

Bonjour CrazyCat, et merci pour ta réponse.
J'ai fait les modifications que tu m'as indiqué, à part que j'ai carrément supprimé $sujet, car je n'ai pas de case sujet dans mon formulaire.
Résultat, je n'ai plus une erreur à la ligne 15, mais à la 4 :

Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in /var/www/l/le/lep/lepostscriptum.perso.sfr.fr/public_html/traitement.php on line 4

Qu'est-ce qui ne lui plaît pas, encore ?!! C'est bien plus compliqué que je le croyais, je ferais peut-être bien de me mettre sérieusement à la programmation javascript et PHP au lieu d'embêter tout le monde sur ce forum.
Merci d'avance à mon(mes) sauveur(s) !!!
m
0
l
7 Janvier 2011 19:46:07

Bonjour,

Refais voir ton code php avec les modifications...
m
0
l
8 Janvier 2011 13:44:33

Bonjour Allstar,
Voici donc le code PHP avec les modif :

  1. <?php
  2. $adresse="****@sfr.fr";
  3. $from="From: $_POST['prenom'] $_POST['nom']<$_POST['email']>\r\n";
  4. $from.="Reply-To: $prenom $nom <$email>\n";
  5. $from.="X-priority:3\n";
  6. $texte="<html>";
  7. $texte.="$texte";
  8. $texte.="</html>";
  9. $from.="MIME-Version: 1.0\r\n";
  10. $from.="Content-Type: text/html";
  11. if (mail($adresse,$texte,$from))
  12. echo("<center><font color=green><br><br><br><h2>Formulaire envoyé ! Je vous répondrais rapidement. Merci!</h2></font><br><a href=http://xxxxxx.fr/>Cliquez ici pour revenir à l'accueil</a></center>");
  13. else
  14. echo("<center><font color=red><br><br><br><h2>Problème à l'envoi du mail...désolé nous ne pouvons actuellement traiter votre demande</h2></font><br>Contactez nous plus <a href=\"mailto:*****@sfr.fr\">classiquement</a>");
  15. ?>

m
0
l
a c 232 L Programmation
8 Janvier 2011 21:37:09

Tu peux pas accéder directement à ton tableau quand $from="From: $_POST['...

Il faut que tu stockes le prenom, le nom et l'email dans des variables, et tu pourras ensuite les utiliser dans ton $from
m
0
l
9 Janvier 2011 20:25:27

Bonjour à tous !
Alors, j'ai tenté plusieurs scripts que j'ai récupéré sur le net, et au final, il semble que le problème vienne de mon hébergeur (SFR) car sur le forum consacré de SFR, j'ai vu que pas mal de monde avait ce problème.
Bref, j'utilise un nouveau script, et voici ce que j'ai comme erreur :

Warning: mail() has been disabled for security reasons in /var/www/l/le/lep/lepostscriptum.perso.sfr.fr/public_html/traitement.php on line 74

la première phrase me laissant penser que la fonction a été désactivée par sfr.
Est-ce que vous pourriez me confirmer mes soupçons ?
Merci d'avance.
m
0
l
a c 232 L Programmation
9 Janvier 2011 22:13:54

En effet, ça n'a pas l'air d'être possible avec SFR vu le message d'erreur.
m
0
l
10 Janvier 2011 19:19:11

C'est bien ce que je craignais. J'ai trouvé un site SFR où le type de formulaire que je veux faire fonctionne, donc j'ai plus qu'à tanner SFR pour qu'ils débloquent la fonction (j'ai menacé de changer de FAI, ça devrait les motiver !!).
Merci à tous pour votre aide. Je laisse le post ouvert (si les modérateurs le permettent), comme ça, si le problème perdure après déblocage de SFR, je reviendrai vers vous.
Merci encore, en tout cas.
m
0
l
27 Mai 2012 11:08:25

bonjour pour faire plus simple j'ai un code que j'ai récupéré sur internet lol et je sais pas ou dois je mettre mon adress mail, pouvez vous m'aidez

<p align="center"><strong>Contact</strong></p>
<table width="500" border="0" align="center" cellpadding="0" cellspacing="0">
<form action="envoi.php" method="post" enctype="application/x-www-form-urlencoded" name="formulaire">
<tr>
<td colspan="3"><strong>Envoyer un message</strong></td>
</tr>
<tr>
<td><div align="left">Votre nom :</div></td>
<td colspan="2"><input type="text" name="nom" size="45" maxlength="100"></td>
</tr>
<tr>
<td width="17%"><div align="left">Votre mail :</div></td>
<td colspan="2"><input type="text" name="mail" size="45" maxlength="100"></td>
</tr>
<tr>
<td><div align="left">Sujet : </div></td>
<td colspan="2"><input type="text" name="objet" size="45" maxlength="120"></td>
</tr>
<tr>
<td><div align="left">Message : </div></td>
<td colspan="2"><textarea name="message" cols="50" rows="10"></textarea></td>
</tr>
<tr>
<td></td>
<td width="42%"><center>
<input type="reset" name="Submit" value="Réinitialiser le formulaire">
</center></td>
<td width="41%"><center>
<input type="submit" name="Submit" value="Envoyer">
</center></td>
</tr>
</form>
</table>
m
0
l
a c 232 L Programmation
27 Mai 2012 15:03:51

Salut,

Il te faut :
- un serveur qui supporte le PHP
- une page envoi.php
- utiliser la fonction mail
m
0
l
Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS