viruss | Salut,
J'ai un formulaire sur un site. J'arrivais bien à recevoir les informations mais sans contraindre les personnes à remplir des champs obligatoires.
J'ai trouver un formulaire qui me semble pas mal ici http://aspirine.org/contact/ et normalement simple à mettre en oeuvre et qui me permet de remplir obligatoirement certains champs importants.
Mais voilà j'ai dû omettre certains paramétrages car lorsque l'utilisateur envoie le formulaire on tombe sur une page blanche.
Mon formulaire est visible ici : http://www.festltpa.com/inscription_merise180408bis.php
Or en local lorsque le formulaire est bien rempli j'ai ce message d'erreur :"Problème technique lors de l'envoi du mail. Pourtant il n'y avait pas de souci dans le formulaire."
Et puis "Notice: Undefined index: ville in c:\program files\easyphp1-8\www\ltpa\contact.php on line 233"
Et ceux pour toutes les données renseignées par l'utilisateur. Ici c'est ville
Ainsi que : "Warning: mail(): Failed to connect to mailserver at "localhost" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in c:\program files\easyphp1-8\www\ltpa\contact.php on line 379"
J'ai bien mis sur mon serveur les fichiers :
- contact.php (que je n'ai pas modifié)
- contactmerci.php (script non changé juste intégré dans le corp d'une page équivalente au reste du site)
- contacterreur.html (pareillement)
- contact.config.php (fichier de configuration à modifier, je vous mets le code ci-dessous)
Code :
- <? /*************************************************************************
- * contact.config.php
- * Fichier de configuration de config.php
- * Copyright (c) François Pirsch 2007
- * http://aspirine.org/contact/
- * Distribué sous licence BSD.
- *
- * Envoi par mail des données d'un formulaire de contact.
- * Le formulaire lui-même doit être dans une page html séparée,
- * il doit être envoyé vers ce script php avec la méthode POST.
- *
- * Il doit contenir un champ nommés "email" ou "mail"
- * et un champ nommé "sujet" ou "subject".
- *************************************************************************/
- /**************************************************************************
- configuration de base
- **************************************************************************/
- /* Adresse email du destinataire du formulaire. On peut donner plusieurs
- * adresses séparées par des virgules.
- * Exemples :
- * $to = ''; <-- vide, si vous utilisez l'option "destinataires au choix"
- * $to = 'nom.prenom@fournisseur.fr';
- * $to = 'dest1@fournisseur.fr, dest2@fournisseur.fr';
- */
- $to = 'mail@fai.net';
- /* Liste des champs obligatoires.
- * Mettre entre guillemets les noms des éléments de formulaires, séparés par des virgules.
- * Respecter les majuscules/minuscules !
- * Exemples :
- * $champs_obligatoires = array("email", "sujet", "nom", "prenom", "adresse" );
- * $champs_obligatoires = array(); <-- aucun champ obligatoire
- */
- $champs_obligatoires = array("email", "nom", "prenom", "email_confirmation", "conditions" );
- /**************************************************************************
- configuration avancée - options
- **************************************************************************/
- // Si vous voulez recevoir une notification quand une nouvelle version est
- // disponible, mettez cette variable à 1, sinon à 0.
- // La vérification se fait à chaque fois qu'un de vos visiteurs utilise votre
- // formulaire. La notification est éventuellement jointe au mail qui vous est
- // envoyé.
- $verifier_mises_a_jour = 0;
- // Si vous voulez récupérer plus facilement les données dans un tableur
- // par copier-coller, mettez à 1 cette variable :
- $formater_pour_tableur = 0;
- // Par défaut les champs non obligatoires vides ne sont pas envoyés dans le mail.
- // Mettez 1 si vous tenez à les recevoir quand-même (sous forme "nom=" suivi de rien).
- $envoyer_aussi_les_champs_vides = 1;
- // Vers quelle page html sera redirigé le visiteur après l'envoi du formulaire ?
- $page_ok = 'contactmerci.php';
- // Quelle page html afficher en cas d'erreur ?
- $page_erreur = 'contacterreur.html';
- // Mettre éventuellement ici une adresse d'expéditeur si elle n'est pas
- // précisée dans le formulaire.
- // Sans expéditeur, le mail risque d'être rejeté par les passerelles anti-spam
- // et ne jamais arriver à destination.
- $from = 'formulaire@mondomaine.com';
- // Mettre éventuellement ici un sujet de mail s'il n'est pas précisé dans
- // le formulaire.
- $sujet = "Inscription concert à la Merise du 18/04/08.";
- // Option : mettre ici les noms des variables HTTP à envoyer avec le mail,
- // entre guillemets et séparés par des virgules.
- // Noms possibles : voir les variables de serveur sur
- // http://www.php.net/manual/fr/reserved.variables.php
- // Exemple : $variables_http = array('REMOTE_ADDR', 'HTTP_USER_AGENT');
- $variables_http = array();
- // Option : enregistrement dans une base de données.
- // Indiquer le login et le mot de passe de la base de données.
- // Indiquer aussi le nom des champs et des variables HTTP à enregistrer
- // dans la table (Ne pas utiliser le nom de champ "n" ).
- $db_server = 'localhost';
- $db_login = '';
- $db_password = '';
- $db_champs_a_enregistrer = array("email", "sujet" );
- $db_nom_de_la_table = 'contact_php';
- // Option : si l'utilisateur peut sélectionner un destinataire particulier
- // dans une liste déroulante, mettre ici la correspondance entre le nom affiché
- // dans le formulaire et l'adresse email de chaque destinataire.
- // Exemples :
- // $destinataires_au_choix = array("direction" => "chef@nomdedomaine.fr",
- // "webmaster" => "web@nomdedomaine.fr",
- // "service après-vente" => "sav@nomdedomaine.fr" );
- // $destinataires_au_choix = array(); <-- option désactivée
- // Les noms doivent correspondre exactement à ceux qui sont affichés dans la liste
- // déroulante (les balises <option> de l'élément <select> ).
- // La liste déroulante doit s'appeler "to".
- // Si vous utilisez cette option, il vaut mieux laisser la variable $to vide (voir
- // au tout début de ce fichier).
- $destinataires_au_choix = array();
- // Option anti-spam : utiliser reCaptcha ( http://recaptcha.net/ )
- // Inscrivez votre site sur recaptcha.net, intégrez le code donné avec la clé publique
- // dans votre formulaire, et indiquez la clé privée ici pour que contact.php
- // puisse faire la vérification.
- $recaptcha_privatekey = "";
- // Option : Chiffrement (cryptage) du mail
- // Pour que le mail vous parvienne crypté, il suffit de donner une clé de
- // chiffrement sous forme d'un petit texte d'exactement 16 caractères.
- //
- // On peut la donner directement :
- // $cle_chiffrement = "Ceci est ma clé!";
- // Ou on peut la stocker séparément dans un fichier texte et donner le chemin :
- // $cle_chiffrement = '/home/moncompte/cle.txt'; // (débute par un slash)
- // $cle_chiffrement = './cle.txt'; // (débute par un point)
- // Elle doit être constituée d'exactement 16 caractères du jeu Latin-1.
- $cle_chiffrement = '';
- ?>
|
J'ai pas paramétrer pour les options je souhaite seulement recevoir les infos avec les champs obligatoires. Si quelqu'un a une idée d'où viennent mes messages d'erreur en local et pourquoi j'ai rien via le serveur, seulement une page blanche, ça m'aiderait bien.
Merci Message édité par viruss le 14-12-2011 à 14:09:01
|