Commentaires

panagix Posté à 25/01/2016 20:07

Bonjour,

Qui a réussi ?

Oui moi .

Bon je suppose que la question c'est comment avez-vous fait ?

Le mieux c'est d'avoir des pages PHP à part pour le traitement et l'envoie par email éventuellement

dans emplacement n'insérez que le code html pour le formulaire, dans ce code il y aura le renvoie vers la page php

pour créer les pages php il vous faut un programme comme Notepad+ par exemple

http://www.magix.info/fr/formulaire-avec-xtreme-web-designer.online-training.375168.html

jcvera Posté à 26/01/2016 19:22

Bonjour,

Merci beaucoup pour votre réponse et pour le tuto très explicite.

J'avais déjà essayé quelques chose dns le même genre, mais comme j'avais rencontré quelques difficultés et des erreurs, je me suis permis d'essayer votre procédure tel quel.

Après avoir corrigé deux petites erreurs de syntaxe  

(pour infos :

1)  dans formulaire.html ,  il faut enlever le " après formulaire.php dans  <form name="form1" method="post" action=formulaire.php">  

2) et dans formulaire.php t il faut supprimer le retour chariot  entre  define('MAIL_SUJET','formulaire');   et 

// vérification des champs)

Il me reste quand même un soucis quand, après avoir rempli toutes les cases, j'envois le formulaire j'ai la réponse : 

Warning: Cannot modify header information - headers already sent by (output started at /home/rotaryaum/www/formulaire.php:7) in /home/rotaryaum/www/formulaire.php on line 29

la ligne 29 étant header("Location:vide.htm");   NB  Le fichier vide.htm  existe bien

 NB  :  la barre d'adressse étant alors  la suivante  http://rotary-aubagne.fr/formulaire.php?nom=1&prenom=2&ville=3&codepostal=4&email=12345%40orange.fr&objet=Devis&comments=test&submit=Envoyer

On voit d'ailleurs qu'il y a aussi un problème avec la variable Email ( qui n'accepte pas assez de caractères)

Si vous avez une idée ou une solution, n'hésitez pas !!

Merci d'avance

JC

 

panagix Posté à 26/01/2016 21:26

Il faut que je refasse le tuto, car le code html pour le formulaire est dépassé.

pour laissé la possibilité de copier le code aux internautes n'est pas aiser non plus, faire du copier coller depuis une image = erreur de syntaxe.

je vais regarder le code, bizarre, je n'est eu personne relevant ce problème dans le formulaire php et le retour a la ligne.

pour la ligne 29, vide.htm est à remplacer par le nom du fichier htm, d'où l'erreur avec un lien

jcvera Posté à 26/01/2016 23:25

Merci pour votre suivi.

J'ai bien crée les 4 fichiers htm à l'identique dont le fichier vide.htm qui  existe bien et qui est valide.

J'ai remarqué par contre que quelque soit la façon dont on rempli le formulaire, on arrive à la même erreur.

 

NB chaque champ comporte max 15 caractères ce qui est insuffisant pour le champ : email

 

 

panagix Posté à 27/01/2016 21:51

Pour le nombre de caractères dans les champs, il faut modifié dans cette ligne

maxlength="15"

Je vais essayer mon formulaire sur mon site, je vous tiens au courant.

peut être qu'il y a un problème en fin de ligne :

Attention : j'ai mis des "\n" pour les retours à la ligne, mais si ça ne fonctionne pas pour vous, vous pouvez essayer en remplaçant les "\n" par "\rn", car cela dépend des serveurs mail.

autre problème aussi :

Attention, l'envoi des données du formulaire est réalisée par la fonction PHP mail() comme vous venez de le voir. Il faut donc que PHP soit bien configuré pour pouvoir envoyer des mails avec un serveur mail, sinon ça fonctionnera pas.
Pour que la fonction mail() soit disponible, il faut que PHP ait accès au service sendmail sur le serveur, au moment de la compilation. Si vous utilisez un autre programme de mail, comme qmail ou postfix, assurez-vous d'utiliser les bonnes API. PHP va commencer à chercher sendmail dans votre PATH, puis, dans les dossiers suivants : /usr/bin:/usr/sbin:/usr/etc:/etc:/usr/ucblib:/usr/lib. Il est hautement recommandé d'avoir sendmail de disponible dans votre PATH. De plus, l'utilisateur qui compile PHP doit avoir le droit d'accéder à l'exécutable sendmail.

Info trouver sur le site 6ma

panagix Posté à 27/01/2016 23:05

Bon j'ai réessayer chez moi ça marche

pour la ligne 29, moi c'est la ligne 24

qu'avez-vous avant  <?php

quand une ligne est donné, cela ne veut pas dire forcément que c'est exactement cette ligne, il peut y avoir un défaut avant.

 

jcvera Posté à 01/02/2016 14:14

Merci Panagix, 

Vraiment désolé mais je n'avais pas vu que vous aviez répondu (pas reçu de Mail de MAgix)

Concernant la ligne 29 au dessus de la ligne 7 <?php  il y a

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<!-- saved from url=(0020)http://www.xara.com/ -->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
</head>
<body>

Je n'avais pas du tout compris qu'il fallait un programme spécifique sur le serveur, Je croyais que c'était OVH, mon hebergeur, qui gérait cela. Je vais donc approfondir cela sur le site  6ma

Encore merci

JC 

jcvera Posté à 02/02/2016 22:53

Décidément j'ai un problème car lorsque je fait une copie des lignes demandées, elles sont supprimées à l'envoi.

Je vous l'envoi donc sous forme d'image jointe

D'autre part je n'avais pas compris qu'il fallait un programme sendmail. J'utilise OVH je croyais que c'était géré par eux.

Je neaivois  pas de dossier /usr quand je me connecte en ftp sur le site.

Comment faire pour ajouter un fichier sendmail ?

Merci d'avance

JC