Jump to content

dorjee

Actif
  • Content Count

    14
  • Joined

  • Last visited

Community Reputation

0 Neutre
  1. dorjee

    Petit problème

    Je reviens ce jour car en plaçant ce bon vieux php captcha sur d'autres serveurs, ça ne marche pas toujours très bien côté affichage des images (image du code captchaïque et image du bouton reload). En fait, sur certains serveurs il faut modifier une petite chose dans le fichier functions.php. Au tout début (juste en dessous de if(session_id() == "") session_start();) il faut parfois remplacer : $_SESSION['cryptdir']=str_replace($_SERVER['DOCUMENT_ROOT'],'',str_replace('\\','/',dirname(__FILE__)))."/"; par : $_SESSION['cryptdir'] = 'crypt/'; J'ai dû faire ça pour des sites installés chez OVH. Alors, il me reste un problème. J'ai deux sites installés chez OVH. Sur http://www.polycopenligne.com/pages/contact.html vous cliquez sur le lien pour le formulaire captcha et vous verrez que les images s'affichent très bien. Maintenant allez sur http://www.capayou.com/pages/reservations.php et là, pas de code captcha !!! Pourtant, les deux sites ont exactement les mêmes fichiers functions.php (j'ai fait un copier-coller pour être certain). Aussi j'y comprends plus rien... Quelqu'un aurait-il une petite idée ?
  2. Comme "promis" à OBIT voici finalement le site sur lequel j'ai travaillé ces derniers temps et qui comporte 3 formulaires avec captcha : http://www.wikispot.fr/ Les formulaires sont visibles à partir de : http://www.wikispot.fr/pages/contact.html http://www.wikispot.fr/pages/registration.html http://www.wikispot.fr/pages/announcing.html à bientôt
  3. Hé bien un grand merci, ça marche fort bien. J'ai adapté ça pour les checkbox et les select, voici les codes. Pour les boutons radio donc : Menu déroulant ? : <input type="radio" name="deroulant" value="Oui" <?php if ($deroulant == "Oui") {echo "checked";} ?> /> Oui <input type="radio" name="deroulant" value="Non" <?php if ($deroulant == "Non") {echo "checked";} ?> /> Non<br><br> Je remets ton code avec une petite modif qui rend le message envoyé plus explicite, car au lieu de 1 ou 0 on a "Oui" ou "Non". De plus le formulaire se présente sans aucun bouton radio présélectionné, ça peut être intéressant dans certains cas (alors qu'avec "0" ça sélectionne le bouton, pourquoi ?...). Pour les checkbox (case à cocher) : <input type="checkbox" name="acceptation_tou" id="acceptation_tou" value="Conditions utilisation acceptées" <?php if ($acceptation_tou == "Conditions utilisation acceptées") {echo "checked";} ?> /> <label for="acceptation_tou">J'ai lu et j'accepte les <a title="Afficher les Conditions d'utilisation dans une autre fenêtre" href="t-o-u.html" class="men" target="_blank">Conditions d'utilisation</a></label> Enfin, pour une liste à choix (select) : <select id="jour" name="jour"> <option value="0" <?php if ($jour == "0") {echo "selected";} ?> />Sélectionnez <option value="Lundi" <?php if ($jour == "Lundi") {echo "selected";} ?> />Lundi <option value="Mardi" <?php if ($jour == "Mardi") {echo "selected";} ?> />Mardi <option value="Mercredi" <?php if ($jour == "Mercredi") {echo "selected";} ?> />Mercredi <option value="Jeudi" <?php if ($jour == "Jeudi") {echo "selected";} ?> />Jeudi <option value="Vendredi" <?php if ($jour == "Vendredi") {echo "selected";} ?> />Vendredi <option value="Samedi" <?php if ($jour == "Samedi") {echo "selected";} ?> />Samedi <option value="Dimanche" <?php if ($jour == "Dimanche") {echo "selected";} ?> />Dimanche </select> Fastoche !!! Pour récupérer les réponses dans le message à envoyer, c'est comme d'habitude, on rajoute dans la partie basse du script : $message.="Conditions utilisation : ". $_POST["acceptation_tou"] . "\n"; $message.="Menu déroulant : ". $_POST["deroulant"]. "\n"; $message.="Choix du jour : ". $_POST["jour"]; Ainsi, comme prévu, au rechargement de la page, bouton radio sélectionné, case cochée ou choix dans la liste sont bien maintenus dans l'état où le client les avait mis. Voilà, encore merci.
  4. Voici un script php de formulaire simplifié pour permettre la réflexion de tous. Nota : le problème ne concerne pas ce formulaire globalement, mais plus précisément la question de maintenir la case cochée, lorsque le client l'a cochée, mais qu'il lui est rappelé qu'il doit remplir un autre champ, la page du formulaire étant alors réaffichée. Mais voici le code complet... <?php include "crypt/functions.php"; ?> <?php // Adresse mail à indiquer ci-dessous $email_webmaster = "monemail_AT_domain.com"; // === traitement des données du formulaire =============== if (isset($_POST["envoyer"])){ // le formulaire a été soumis $etat = "erreur"; // Valeur par défaut. Prendra la valeur "ok" s'il n'y a pas d'erreur // Valeur par défaut. Prendra la valeur "ok" s'il n'y a pas d'erreur // --- mise en forme des champs saisis dans le formulaire lors de sa soumission --- if (isset($_POST["nomprenom"])) { $_POST["nomprenom"]=trim(stripslashes($_POST["nomprenom"])); } // --- test de la validité des champs saisis --- if (empty($_POST["nomprenom"])) { // le nom d'utilisateur est vide $erreur="Saisissez vos nom et prénom..."; } [b]elseif (empty($_POST["acceptation_tou"])) { // la case n'est pas cochée $erreur="Vous devez accepter les conditions d'utilisation..."; }[/b] //*************************** // insérer ici le test d'acceptation //*************************** elseif (empty($_POST["code"])) { // le code n'est pas saisi $erreur="Saisissez le code de vérification..."; } else { // --- Vérification de la validité du code captcha --- if (chk_crypt($_POST['code'])) // --- tous les champs sont correctement remplis : on pourra envoyer le mail --- $etat="ok"; // --- Le code captcha n'est pas valide --- else $erreur="Code de vérification non valide ..."; } } else { // --- le formulaire n'a pas été soumis --- $etat="attente"; } // === fin de traitement des données du formulaire ======================================================= ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html> <head> <title>Essai</title> <style type="text/css"><!-- body {margin-left: 20px; margin-top: 20px; margin-right: 20px; margin-bottom: 20px;} --></style> </head> <body bgcolor="#ffffff"> <center>FORMULAIRE ESSAI</center><br> <?php if ($etat!="ok"){// le formulaire n'a pas été soumis, ou soumis avec une erreur if ($etat=="erreur"){ //le formulaire a été soumis avec une erreur echo "<center><font size=3 color=#ff0000 face=arial><b>".$erreur."</b></font></center>\n"; // afficher le message d'erreur } ?> <form method="post" action="<?php echo $_SERVER["PHP_SELF"]; ?>"> <label for="nomprenom">Nom - Prénom :</label><br> <input type="text" size="40" name="nomprenom" id="nomprenom" value="<?php if (!empty($_POST["nomprenom"])) { // le nom-prénom de l'expéditeur a été saisi : le réafficher echo htmlspecialchars($_POST["nomprenom"],ENT_QUOTES); } ?>" /><br><br> [b]<input type="checkbox" name="acceptation_tou" id="acceptation_tou" value="<?php echo htmlspecialchars("Conditions utilisation acceptées");?>" /> <label for="acceptation_tou">J'ai lu et j'accepte les <a title="Afficher les Conditions d'utilisation dans une autre fenêtre" href="t-o-u.html" class="men" target="_blank">Conditions d'utilisation</a></label>[/b]<br> <table width="90%" align="center" border="0" cellspacing="0" cellpadding="2"> <tr><td width=60%> <?php dsp_crypt(0,1); ?></td> <td><label for="code">Veuillez saisir le code* :</label><br /> <input type="text" id="code" name="code" /><br /> (lettres minuscules uniquement)</td></tr></table><br> <center><input type="reset" name="delete" value="Effacer" /> <input type="submit" name="envoyer" value="Envoyer" /></center> </form> <?php } else { // le formulaire a été soumis sans erreur, on envoie le mail $entete = "From : ".$_POST["email_expediteur"]." <".$_POST["email_expediteur"].">\n"; $entete .= "MIME-Version: 1.0"; $message="Provenance : ". $_SERVER['HTTP_REFERER'] . "\n"; $message.="Adresse IP : ". $_SERVER['REMOTE_ADDR'] . "\n"; $message.="Navigateur : ". $_SERVER['HTTP_USER_AGENT'] . "\n"; $message.="Nom-Prénom : ". $_POST["nomprenom"] . "\n"; [b]$message.="Conditions utilisation : ". $_POST["acceptation_tou"];[/b] if (@mail($email_webmaster,$_POST["titre"],$message,$entete)){ // mail envoyé echo "<br><br><center><font face=arial>Votre inscription a été envoyée. Nous allons bientôt la traiter, merci.</font></center>"; } else { // erreur lors de l'envoi du mail echo "<br><br><font color=#ff0000 face=arial>Un problème s'est produit lors de l'envoi du formulaire d'inscription.</font>\n"; echo "<a href=\"".$_SERVER["PHP_SELF"]."\">Réessayez...</a>"; } } ?> </body> </html> Attention, vous devez aussi récupérer le répertoire "crypt" que vous trouverez en téléchargeant le code complet chez : http://www.cryptographp.com/ Installez ce script php sur votre site (après l'avoir copié-collé dans un fichier texte et l'avoir appelé, par exemple, essai.php). Pensez aussi à indiquer votre adresse mail à la 3e ligne. En mettant le répertoire "crypt" et tout ce qu'il contient dans le même répertoire que ce fichier essai.php cela va marcher. Maintenant voici le problème. L'utilisateur remplit le champ "nomprenom" L'utilisateur coche la case à cocher Mais l'utilisateur oublie de saisir le code captcha en conséquence, la page du formulaire de réaffiche (se recharge) en affichant en rouge le message qui rappelle que "il faut saisir le code" !!! au cours de ce rechargement de la page, le nomprenom est bien réaffiché, mais pas la case précédemment cochée (bien sûr sur ce formulaire d'essai c'est pas grave, mais imaginez un gros formulaire avec plusieurs cases à cocher, certaines cochées, d'autre pas par l'utilisateur... voyez le problème ! J'ai mis en gras le code qui concerne la case à cocher : Affichage de la case à cocher dans le formulaire : <input type="checkbox" name="acceptation_tou" id="acceptation_tou" value="<?php echo htmlspecialchars("Conditions utilisation acceptées");?>" /> <label for="acceptation_tou">J'ai lu et j'accepte les <a title="Afficher les Conditions d'utilisation dans une autre fenêtre" href="t-o-u.html" class="men" target="_blank">Conditions d'utilisation</a></label> Vérification que la case à cocher est bien cochée (pour le cas ou la coche est obligatoire) : elseif (empty($_POST["acceptation_tou"])) { // la case n'est pas cochée $erreur="Vous devez accepter les conditions d'utilisation..."; } Ajout du value de la case à cocher au message à envoyer : $message.="Conditions utilisation : ". $_POST["acceptation_tou"]; Donc, voilà le problème : comment maintenir la case à cocher entre deux rafraîchissements de la page, comme cela est fait pour le type text avec la variable nomprenom. La solution sera aussi valable pour le cas des select (liste de choix) et des boutons radio. merci d'avance.
  5. Merci pour les remerciements ! Je posterai bientôt l'url du site sur lequel je travaille et où on verra les formulaires en question... a+
  6. J'ai trouvé une solution en php, voir dans ce forum ici : http://www.webmaster-hub.com/index.php?showtopic=32882
  7. J'avais posé la question sur la forum JS, mais en fait j'ai finalement trouvé une solution en php, la voici : Mon lien d'appel est : <a href="mondomaine/mapage.php?monjs=fichierjs">Ma page</a> En tête de "mapage.php" (au-dessus de "<!doctype html...") je mets le code php suivant, qui récupère l'argument passé en url : <?php $jsacharger=$_GET['monjs']; ?> Enfin, dans le head je place l'appel classique à un fichier js... <script type="text/javascript" src="<?PHP ECHO $jsacharger; ?>.js"></script> ...en passant comme nom de fichier (sans l'extension, que j'ajoute) l'affichage "echo" de l'argument passé en url. On aura compris qu'ainsi, avec un seul fichier php, je peux afficher plusieurs ensembles d'informations en fonction du fichier js chargé à partir de l'argument en url, fichier js dans lequel je donne des valeurs aux différentes variables, affichées dans mapage.php par des classiques document.write(variable). Que pensent les experts de cette solution ? Par exemple, question sécurité... Merci.
  8. Bonjour, Voilà ce que je fais : dans un lien je passe un argument : <a href="http://mondomaine/mapage.html?44518">Ma page</a> cet argument est récupéré dans "mapage.html" avec le js suivant (dans le head) : <script language="JavaScript"> <!--; var jsfile = "default" var jsfile = window.location.search; if (jsfile) { jsfile=jsfile.substring(1); jsfile = unescape(jsfile); eval(jsfile); } // end hide --> </script> de cette façon je récupère bien la valeur passée en argument dans l'URL "44518", pour preuve l'affichage de cette valeur dans le body avec : Variable = <script>document.write(jsfile);</script> Donc, ça marche ! Mon problème est le suivant : je voudrais utiliser la valeur de "jsfile" pour charger un script "44518.js" dans "mapage.html" le chargement d'un script js se fait dans le head classiquement avec : <script type="text/javascript" src="44518.js"></script> mais au lieu du nom du fichier, je voudrai utiliser la valeur de la variable "jsfile", quelque chose comme ça : <script type="text/javascript" src=jsfile.js></script> et là, bien sûr, ça ne marche pas, rien ne s'affiche dans "mapage.html" concernant les variables contenues dans "44518.js" puisque ce fichier js n'est pas chargé. Sur le principe, vous aurez sans doute compris que le but de l'exercice est de n'avoir qu'une seule page html, qui afficherait diverses informations selon le fichier js chargé, en fonction d'une valeur passée dans l'url appelant cette page. Merci pour votre aide.
  9. Déjà une réponse concernant le test d'égalité entre deux variables (deux champs du formulaire donc). Soit les deux champs à tester "email_expediteur" et "re_email_expediteur" (on demande au visiteur de ré-écrire son e-mail à l'identique, pour vérification). Le code de test est le suivant : elseif (empty($_POST["email_expediteur"])) { // l'e-mail est vide $erreur="Saisissez votre e-mail..."; } elseif (!eregi("^[0-9a-z]([-_.]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*\.[a-z]{2,4}$",$_POST["email_expediteur"])){ // l'adresse e-mail n'est pas valide $erreur="Votre adresse e-mail n'est pas valide..."; } elseif (empty($_POST["re_email_expediteur"])) { // l'e-mail répétée est vide $erreur="Re-saisissez votre e-mail..."; } elseif ($_POST["email_expediteur"] !== $_POST["re_email_expediteur"]) { // les e-mails ne sont pas identiques $erreur="Re-saisissez votre e-mail à l'identique..."; } Soit 4 tests : vérifier que le premier champ e-mail contient quelque chose (pas vide) dans ce cas vérifier sa validité (format xxx_AT_xxx) vérifier que le deuxième champ e-mail contient quelque chose (pas vide) et c'est là qu'apparaît le test d'égalité avec l'opérateur "!==" qui veut dire "différent" et si les deux adresses mail saisies sont différentes alors on renvoie le message d'erreur
  10. Me revoilà avec donc de nouveaux champs de formulaire. Tout d'abord des bouton radio (un seul choix possible). Pour faire ça je me suis inspiré du code donné par Norbert_404, ce qui donne : Veuillez choisir :<br> <input type="radio" name="choix" id="choix1" value="<?php echo htmlspecialchars("A");?>" checked /><label for="choix1">A</label> <input type="radio" name="choix" id="choix2" value="<?php echo htmlspecialchars("B");?>" /><label for="choix2">B</label> <input type="radio" name="choix" id="choix3" value="<?php echo htmlspecialchars("C");?>" /><label for="choix3">C</label> Le visiteur a le choix dans cet exemple (à adapter bien sûr à vos besoins) entre 3 options : A, B ou C. Vous remarquerez la fameuse balise <label> (qui renvoie à l'id du champ) que j'ai découverte grâce à alphega ( ) et qui renforce l'ergonomie d'un formulaire, car le visiteur, surtout dans le cas des boutons radio (ou les checkbox) n'a pas besoin de passer une épreuve de psychomotricité fine en visant le petit rond (ou la petite case), mais peut simplement cliquer sur le texte d'option qui voisine avec le bouton radio (pitié pour les mal voyants). Concernant le formatage il n'y en a pas pour un bouton radio (comment passer un antislash par un bouton radio, hein ? A ce propos, le "stripslashes" c'est pour retirer les anti-slashes d'une chaîne de caractères). Pas non plus de test de remplissage (je suppose qu'on pourrait en faire un du style "au moins un choix doit être fait"), le plus simple étant de forcer un choix avec "checked" (j'ai, dans mon exemple, forcé l'option A), libre au visiteur de changer de choix. Pour ce qui concerne l'envoi du formulaire, j'ai utilisé la ligne suivante : $message.="Choix du visiteur : ". $_POST["choix"] . "\n"; tout simplement ! Et dans le message mail reçu j'obtiens bien A, B ou C en fonction du bouton coché par le visiteur. Passons à une case à cocher. J'ai suivi le même principe, ce qui donne : <input type="checkbox" name="acceptation" id="acceptation" value="<?php echo htmlspecialchars("Accepté");?>" /> <label for="acceptation">J'accepte</label> Ici, le visiteur peut cocher une case d'acceptation (de ce que vous voulez). Toujours l'ergonomie <label>, voir ci-dessus. Pour l'envoi cela donne : $message.="Acceptation par le visiteur : ". $_POST["acceptation"]; Ainsi, dans le mail reçu si pas coché y'a rien, sinon je vois "Accepté". Enfin, à noter une petite modif de la ligne de commande "@mail", puisque dans mon formulaire il n'y a que des champs text, boutons radio et checkbox et plus de message, donc ceci : if (@mail($email_webmaster,$_POST["titre"],$message.$_POST["message"],$entete)){ devient : if (@mail($email_webmaster,$_POST["titre"],$message,$entete)){ Au passage, dans le cas de l'utilisation du textarea "message" je suis d'ailleur en train de me demander si on ne peut pas tout simplement ajouter "message" dans $message et se passer ainsi d'envoyer $_POST["message"]. ça doit être possible, hein alphega ? ******************************* Voilà, il me reste deux questions, pour alphega justement (ou un autre tout aussi performant...). 1) J'ai deux champs text pour une adresse e-mail et sa confirmation, donc je voudrais pouvoir insérer un test qui vérifie que "email_expediteur" est bien == à "re_email_expediteur" avec message d'erreur assorti, si ce n'est pas le cas. 2) concernant la case à cocher d'acceptation, là encore comment tester qu'elle est bien cochée et obliger cette coche pour l'envoi du formulaire ? A vous de jouer
  11. Désolé, dans les deux premiers codes ci-dessus il traîne des balises de table "</td><td >" à enlever (ou bien mettre <tr><td> au début et </td></tr> à la fin pour avoir deux belles cellules de tableau, à encadrer par <table></table> bien sûr !).
  12. Oui, merci alphega pour cette superbe amélioration. J'ai eu un sale ralentissement php chez mon fournisseur dans la journée, mais ce soir ça roule et ton script fait des merveilles J'ai aussi fait des petites améliorations et je vais faire un peu de didactique pour les newbees qui passeraient par là (étant donné la position sur Google, doit y avoir du monde). Donc... A partir du scrypt de base de alphega que l'on trouve en page 1 de cette série de posts, pour ajouter des champs de formulaire il suffit de répliquer le morceau de script suivant dans la page html autant de fois que de champs nécessaires et voulus. Le morceau en question : <label for="nom">Item :</label></td> <td ><input type="text" size="60" name="item" id="item" value="<?php if (!empty($_POST["item"])) { // le item de l'expéditeur a été saisi : le réafficher echo htmlspecialchars($_POST["item"],ENT_QUOTES); } ?>" /> Vous remplacez "item" par ce dont vous avez besoin pour votre formulaire (nom, prenom, telephone, e-mail, etc.). ça c'est pour des champs text. Maintenant pour un textarea multiligne : <label for="message">Message* :</label></td> <td ><textarea name="message" id="message" cols="45" rows="5"><?php if (isset($_POST["message"])) { // le message a été saisi: le réafficher echo htmlspecialchars($_POST["message"],ENT_QUOTES); } ?></textarea> Là j'ai laissé le nom de l'item "message", car généralement un champ textarea sert pour la partie "message" d'un formulaire. Mais vous pouvez y mettre ce que vous voulez bien entendu. Ensuite, on passe aux contrôles de sécurité et validation. Dans la partie "haute" du script de alphega, celle qui se trouve au-dessus du code HTML (au dessus de "<!DOCTYPE html PUBLIC ..."), pour chaque champ de votre formulaire vous devez ajouter ceci : if (isset($_POST["item"])) { $_POST["item"]=trim(stripslashes($_POST["item"])); } Je ne connais pas grand chose à PHP, mais je suppose (c'est "trim", qui me rappelle VBasic qui m'y fait penser), je suppose que ça enlève les slashes, voire les antislashes du contenu du champ, afin d'éviter le passage de codes malicieux par là. Enfin, alphega l'a mis, faut le mettre Là encore, remplacer "item" par l'identité du champ en question (nom, prenom, telephone, etc.). Donc faire ça pour chaque champ de formulaire. Ensuite, pour chaque champ obligatoire ajouter ceci : if (empty($_POST["item"])) { // le item est vide $erreur="Saisissez votre item..."; } Là, fastoche à comprendre, c'est pour obliger à remplir un champ avant d'envoyer le formulaire. Donc à n'utliser que pour les champs qui doivent être obligatoirement remplis (par exemple, l'adresse e-mail de l'expéditeur, qu'on puisse lui répondre). A noter que pour les deux morceaux de scripts ci-dessus, il vaut mieux les mettre dans le même ordre que l'ordre des champs de formulaire dans la page. A présent, retour en bas de page HTML, vers le code formulaire. La petite amélioration que j'ai ajoutée concerne le titre du message. En effet, un message de formulaire n'étant pas un e-mail à proprement parler, l'utilisateur se fout de mettre un titre. Par contre, le webmaster qui va recevoir le message voudrait bien recevoir des titres standardisés, qui lui disent aussitôt de quel formulaire de son site vient le message (par exemple, "Formulaire d'inscription", "Formulaire de commande", etc.). C'est pour cela que la variable titre n'est plus nourrie par un champ de formulaire, mais par une variable cachée (hidden) à laquelle l'utilisateur ne touche pas et qui est propre au formulaire. La voici, à placer juste sous la balise "<form method="post"..." : <input type="hidden" id="titre" name="titre" value="Formulaire de contact"> Voilà, à la place de "Formulaire de contact" vous mettez ce que vous voulez et ça s'affichera dans le titre du mail que vous recevrez. On arrive à la fin, dans la partie, tout en bas, du script pour envoyer le formulaire, je donne un exemple complet correspondant à un formulaire de contact avec nom, prénom, fonction, téléphone et message. En fait, on ajoute (ou retranche ou change) autant d'items que l'on veut. $entete = "From : ".$_POST["email_expediteur"]." <".$_POST["email_expediteur"].">\n"; $entete .= "MIME-Version: 1.0"; $message="Provenance : ". $_SERVER['HTTP_REFERER'] . "\n"; $message.="Adresse IP : ". $_SERVER['REMOTE_ADDR'] . "\n"; $message.="Navigateur : ". $_SERVER['HTTP_USER_AGENT'] . "\n"; $message.="Nom : ". $_POST["nom"] . "\n"; $message.="Prénom : ". $_POST["prenom"] . "\n"; $message.="Fonction : ". $_POST["fonction"] . "\n"; $message.="Téléphone : ". $_POST["telephone"] . "\n\n"; $message.="Message : "; if (@mail($email_webmaster,$_POST["titre"],$message.$_POST["message"],$entete)){ Quelques explications pour ceux qui connaissent pas. Les "\n" sont des retours à la ligne qui s'effectueront dans le message mail que vous recevrez. "Nom : ", etc. sont des intitulés des informations transmises (par exemple, dans votre message vous verrez "Nom : Dupont"). A ce propos, j'ai ajouté en dernier "Message : ", ce qui donne un intitulé à la partie "message" du mail. Que c'est pas beau de fignoler comme ça Voilà, je reviendrais certainement lorsque je testerai les cases à cocher et les listes de sélection... A bientôt et merci à tous.
  13. Un grand merci, ça va aussi m'être d'une grande aide, bravo Je vais tester ça dans la journée.
  14. Je suis en train d'installer le script contact.php de alphega avec cryptographp. Cependant, je souhaiterais développer un formulaire avec davantage de champs que "message". Je bute sur la ligne d'envoi du mail : if (@mail($email_webmaster,$_POST["titre"],$_POST["message"],$entete)){ J'ai réussi à ajouter un "message2" (avec un champ textarea associé et en doublant $_POST["message"] avec $_POST["message2"]) et ça passe niveau mail. Cependant, je n'arrive pas aller au-delà. Dans mon formulaire je voudrais les champs : Nom, Prénom, Fonction, Téléphone (en text) et Adresse (en textarea). Comment faire pour envoyer par mail toutes ces variables ? De plus, comment envoyer aussi des chaînes d'intitulés, pour recevoir mon mail avec, par exemple : Nom : Dupont Prénom : Jean Téléphone : 05 00 00 00 00 00 et ainsi de suite... Peut-on concaténer tout ça dans une seule variable "message" y compris les retours à la ligne ? Et comment ? Je ne suis pas connaisseur en PHP, mais je chipote le code... Merci pour éventuelle réponse.
×
×
  • Create New...