Formulaire de contact + traitement - HTML/CSS - Programmation
Marsh Posté le 27-05-2014 à 13:16:49
Bonjour,
Pour commencer utilise les code cpp pour ton code ainsi il se verra comme ça
partie html :
Code :
|
partie php :
Code :
|
si tu as un message d'erreur fait le nous parvenir
Et pour dans tout tes inputs text sur as oublier le champs name=""
Pour que ta varible $Nom soit rempli il faut qu'un de tes input de type text ressemble à ceci
<input type="text" name="name" value="Name">
Marsh Posté le 27-05-2014 à 13:35:14
Salut et merci de m'avoir répondu.
Pour les quotes code, je n'ai pas trouvé quelles quotes utiliser en postant le message désolé. Il y a bien la balise C/C++, mais je ne savais pas si c'était cela.
Ensuite, j'ai déjà essayé de placer le champs name="" dans mon code, dans chaque inputs, mais ça n'a rien changé au résultat et donc je les ai enlevé avant de poster ici. Afin de conserver le code comme je l'avais à la base. Donc à priori, le problème ne viendrait pas de là. En tout cas, pas QUE de là.
Et Malheureusement, je n'ai aucun message d'erreur pour m'aider à résoudre le problème. Quand je remplis mon formulaire, tout va bien, quand j'appuie sur envoyer le formulaire m'affiche la phrase de confirmation, mais quand je vérifie ma boite mail, rien.
Vois-tu ce qui pourrais empêcher le formulaire de fonctionner et au mail de me parvenir? (le mail est bien le bon, j'ai vérifié. Je ne l'ai pas affiché dans mon message bien sur).
Peut-être le fichier de traitement qui n'est pas bon?
Marsh Posté le 27-05-2014 à 13:55:50
Ce sont bien les balise c/c++, faudrait qu'il change leurs noms
Pas que de la, car il faut bien ce name pour que tu puisse récupérer tes données coté php.
Ensuite tu n'as pas de message d'erreur, c'est étrange il devrait te dire que tes variables sont null car tu ne fait pas de test sur tes variables.
Pour être sur de bien recevoir les variables je fait toujours ce double test, c'est lourd mais je suis sur de tout le temps tout recevoir.
Je te l'écrit de manière compréhensible mais ça peut être raccourcis grace au condition ternaire.
Code :
|
Comme ça si tu as le message d'erreur c'est qu'une de tes variables passe pas sinon c'est ta méthodes d'envoie de mail qui passe pas ( problème avec le réglage du SMTP ect... )
PS :
isset vérifie si la viariable est pleine
empty vérifie si elle est pas vide
ainsi if(isset()) veut dire si elle est pleine
alors que if(!empty()) veut dire si elle n'est pas vide
Marsh Posté le 27-05-2014 à 15:12:52
Bon j'ai mis en place les input name="" dans le fichier du formulaire.
Et j'ai aussi mis en place ton code pour tester.
Et... rien!
Le pire c'est que j'ai placé ma page de formulaire à la racine d'un site dont l'envoi de mail fonctionne. J'ai même utilisé la même adresse mail pour voir.
Mais il ne se passe rien. Je suis entrain de passer un temps fou sur ce truc et je ne comprends pas où est le problème.
On dirait que les infos ne sont même pas envoyés à mon fichier de traitement.
Marsh Posté le 27-05-2014 à 15:30:27
Désolé pour le double post mais je viens prévenir que j'ai mis le doigt sur le problème.
A la base on peut dire que c'est moi.
Puisque en parcourant le code de ma page, je me suis rendu compte que celle-ci utilisait un javascript pour envoyer le formulaire.
Donc je cherchais l'erreur dans la mauvaise direction, je pouvais d'ailleurs chercher longtemps.
Il suffisait en fait de remplacer une valeur "#" par mon mail, et ça marche. Rien d'autre à faire.
J'aurais aimé commencer par cela plutôt que de perdre mon temps focaliser comme j'étais sur le formulaire.
Alors encore désolé de t'avoir fait perdre ton temps et merci pour ton aide. Je crois que l'on peut classer l'affaire.
Marsh Posté le 27-05-2014 à 15:34:49
Pas de soucis, et ce n'est pas grave peut être que sens n'autres discution qui ta fait sortir le nez de ton code tu n'aurais pas encore vu l'erreur.
Parfois le mieux c'est d'allez faire un tour et revenir et tout s'éclaire
Marsh Posté le 27-05-2014 à 15:39:53
Oui en fait ça m'a permis de faire la démarche qui m'a mené à mon erreur. Donc merci.
Parce que logiquement avec ton code ça aurait du marcher. Or ce n'était pas le cas.
J'ai donc vérifié si ça pouvait venir de la configuration de mon hébergeur voir de ma boite mail.
Et tout ça, ça fonctionne très bien.
Je me suis donc dit que le soucis était au niveau de mon fichier contenant le formulaire puisque apparemment rien n'était envoyé vers le fichier de traitement.
Et là, j'ai cherché un peu plus loin dans le code de ma page pour tomber sur ce fameux script.
Marsh Posté le 02-06-2014 à 12:30:54
bjrs Archablade je ss content de tomber sur ce topic et de savoir que ta resolus ton probleme parce que je suis dans la meme situation et je pense meme que j'ai le meme code php que toi. j'ai essayer tous les formile possible et je n'arrivais tjts pas a trouver ou venait le blocage de traitement de ma page jusqu'a ce que je tombe sur ton topic.
serait -il possible que tu puisse m'indiquer a koi ressemble ce javascript parce que j'imagine que mon soucis viendrais de la aussi. merci d'avance Archablade
Marsh Posté le 20-06-2014 à 13:53:34
Désolé je ne suis pas repassé depuis un moment.
Le script de ma page de contact ressemble à ça :
Code :
|
Dans mon cas il suffisait de remplacer le # par mon adresse mail.
Le script se trouve au début du code de la page.
Marsh Posté le 27-06-2014 à 14:13:46
Hello,
j'ai également un souci de formulaire de contact sur mon site (je suis totalement noob en code quel qu'il soit).
Voici le code HTML de ma page.. Il doit manquer quelque chose mais je ne vois pas quoi ajouter ni comment !
Si je rentre cette page sur mon site et que je tente de m'envoyer un mail, ça ne marche pas, et ça me télécharge un fichier .php
(j'ai changé mes coordonnées pour vous montrer ce code ici bien entendu).
Dans ce code j'ai à un moment donné cette partie : envoimail.php (je dois donc bien avoir un fichier php à part ?)
Citation : |
J'ai ça comme fichier php à côté :
Citation : <?php |
merci d'avance
Marsh Posté le 26-05-2014 à 17:06:11
Salut à tous,
Je suis ici car j'ai passé ma journée à me battre contre un formulaire de contact. Le html et moi ça fait un moment qu'on ne s'est pas parlés et donc je galère sévèrement.
Le soucis est que j'ai acheté un template pour un site internet, jusqu'ici tout va bien, je le bricole, mais je suis coincé sur le formulaire que je n'arrive pas à faire fonctionner. Pourriez-vous m'aider svp?
J'ai d'un côté mon formulaire :
<form id="contact-form" ENCTYPE="text/plain" method="post" action="traitement.php">
<div class="success"> Votre demande a été soumise <strong>Je vous contacterais sous peu.</strong></div>
<fieldset>
<label class="name">
<input type="text" value="Nom ou Société">
<span class="error">*This is not a valid name.</span>
<span class="empty">*This field is required.</span>
<span class="clear"></span>
</label>
<label class="Adresse">
<input type="text" value="Adresse">
<span class="error">*This is not a valid name.</span>
<span class="empty">*This field is required.</span>
<span class="clear"></span>
</label>
<label class="Cp">
<input type="text" value="Code postal">
<span class="error">*This is not a valid name.</span>
<span class="empty">*This field is required.</span>
<span class="clear"></span>
</label>
<label class="Ville">
<input type="text" value="Ville">
<span class="error">*This is not a valid name.</span>
<span class="empty">*This field is required.</span>
<span class="clear"></span>
</label>
<label class="email">
<input type="text" value="E-mail">
<span class="error">*This is not a valid email address.</span>
<span class="empty">*This field is required.</span>
<span class="clear"></span>
</label>
<label class="phone">
<input type="text" value="Téléphone">
<span class="error">*This is not a valid phone number.</span>
<span class="empty">*This field is required.</span>
<span class="clear"></span>
</label>
<label class="message">
<textarea>Message</textarea>
<span class="error">*The message is too short.</span>
<span class="empty">*This field is required.</span>
<span class="clear"></span>
</label>
<div class="buttons"><span><a class="button" data-type="reset">EFFACER</a></span><span><a class="button" data-type="submit">ENVOYER</a></span></div>
</fieldset>
</form>
Et de l'autre un fichier traitement.php que j'ai recopié via un autre site en essayant de l'adapter... sans succès apparemment :
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>traitement formulaire</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<meta http-equiv="refresh" content="0; URL=formulaire.html">
</head>
<?php
$Nom = $_POST['name'];
$Adresse = $_POST['Adresse'];
$Code postal = $_POST['Cp'];
$Ville = $_POST['Ville'];
$email = $_POST['email'];
$telephone = $_POST['phone'];
$message = $_POST['message'];
$to = 'test@gmail.com';
$objet = "Test" //Met l'objet que tu veux
/* En-têtes de l'e-mail */
$headers = "From: $Nom \r\n\r\n";
/* Envoi de l'e-mail */
mail($to, $objet, $message, $headers)
?>