IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Ajouter des champs


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau membre du Club
    Inscrit en
    Février 2010
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Février 2010
    Messages : 5
    Par défaut Ajouter des champs
    Bonjour, voilà j'ai fait un site avec joomla et je voulais un formulaire de contact qui soit fait directement sur la page de mon article sans passer par un composant style artform, chronoform etc.
    Après de multiples recherches sur le net, j'ai trouvé quelque chose qui marche, il suffit d'inserer un code dans le html de la page puis de creer un document .php avec un autre code. Tout marche comme je veux.
    Gros soucis, je ne sais pas comment ajouter de nouveaux champs, j'ai essayé plein de choses, bidouillé les codes mais sans résultats.

    Voici le code que j'ai dans mon article :

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    <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>


    Voici le code qu'il y a dans envoi.php !

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    <?php 
    $nom=$HTTP_POST_VARS['nom']; 
    $mail=$HTTP_POST_VARS['mail']; 
    $objet=$HTTP_POST_VARS['objet']; 
    $message=$HTTP_POST_VARS['message']; 
     
    /////voici la version Mine 
    $headers = "MIME-Version: 1.0\r\n"; 
     
    //////ici on détermine le mail en format text 
    $headers .= "Content-type: text/plain; charset=iso-8859-1\r\n"; 
     
    ////ici on détermine l'expediteur et l'adresse de réponse 
    $headers .= "From: $nom <$mail>\r\nReply-to : $nom <$mail>\nX-Mailer:PHP"; 
     
    $subject="$objet"; 
    $destinataire="webmaster@votre-site.com"; //remplacez "webmaster@votre-site.com" par votre adresse e-mail
    $body="$message"; 
    if (mail($destinataire,$subject,$body,$headers)) { 
    echo "Votre mail a été envoyé<br>"; 
    } else { 
    echo "Une erreur s'est produite"; 
    } 
    ?></p>
    <p align="center">Vous allez bientot etre redirigé vers la page d'acceuil<br>
    Si vous n'etes pas redirigé au bout de 5 secondes cliquez <a href="http://www.votre-site.com">ici 
    </a></p>
    J'aimerai que mon formulaire soit comme ça :

    Je souhaiterai :
    Votre nom (ça c'est ok)
    Société (zone de texte qu'une ligne)
    Téléphone (zone de texte qu'une ligne)
    Email (ça c'est ok)
    Votre message (ça c'est ok)
    Si vous désirez nous adresser une demande d'étude de travaux, veuiller remplir les champs ci-dessous :
    Travaux intérieurs (zone à cocher)
    Travaux extérieurs (zone que l'on peut cocher aussi)
    Date de réalisation prévue (zone de texte qu'une ligne)
    Descriptif succint (zone de texte à plusieurs lignes)

    Voilà si quelqu'un peut me faire ces codesn ce serait génial ça me rendrait un énorme service, de plus je pourrai comparer la différence avec les codes d'origines et je comprendrai mieux les modifications à faire.
    Je vous remercies d'avance !!!

  2. #2
    Membre chevronné
    Avatar de hornetbzz
    Homme Profil pro
    Directeur commercial
    Inscrit en
    Octobre 2009
    Messages
    482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France

    Informations professionnelles :
    Activité : Directeur commercial

    Informations forums :
    Inscription : Octobre 2009
    Messages : 482
    Par défaut
    Bonjour,

    il te suffit d'ajouter les nouveaux champs dans ton code HTML, puis de récupérer leurs valeurs dans le code envoi.php.

    Tu as déjà tout sous les yeux. Bref, par sympathie ou empathie naturelle, je te donne la piste à suivre:

    Par exemple, ajouter ta zone "Travaux intérieurs (zone à cocher)" dans le code HTML de ton formulaire:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    .. code précédent ...
    <tr>
    <td><div align="left">TRAVAUX : </div></td>
    <td colspan="2">
    <input type="checkbox" name="travaux" id="travaux_int" checked="checked" /><label for="travaux_int">Travaux Intérieurs</label>
    </td>
    </tr>
    .. code suivant ...
    Puis récupérer les infos dans le code php, appelé lors du clic sur le bouton submit:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <?php
    $nom=$HTTP_POST_VARS['nom'];
    $mail=$HTTP_POST_VARS['mail'];
    $objet=$HTTP_POST_VARS['objet'];
    $message=$HTTP_POST_VARS['message']; 
    $travaux = $HTTP_POST_VARS['travaux'];
    ...
    Mais attention, je préfère t'alerter: pas terrible tout ça, surtout sur un site en production.. Hackage garanti. Il faut impérativement sécuriser les informations entrées par l'utilisateur. Pour ça, tu as ... un peu de lecture à faire. Par exemple, ça fait belle lurette qu'on n'utilise plus $HTTP_POST_VARS. Demandes à ton ami.

  3. #3
    Nouveau membre du Club
    Inscrit en
    Février 2010
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Février 2010
    Messages : 5
    Par défaut
    ok merci voilà mon formulaire est au top.
    pour la sécurité je savais pas, je vais lire tout ça, mais est ce qu'il faudra que je refasse tout ?

Discussions similaires

  1. Réponses: 1
    Dernier message: 14/08/2006, 10h41
  2. Ajouter des champ dans une table avec une procedure sp
    Par Abdou1 dans le forum MS SQL Server
    Réponses: 5
    Dernier message: 26/07/2006, 19h32
  3. [PHP-JS] ajouter des champ en cliquant sur un bouton?
    Par einsteineuzzz dans le forum Langage
    Réponses: 3
    Dernier message: 29/06/2006, 18h36
  4. Ajouter des champs dans un formulaire
    Par Luffy Duck dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 18/05/2006, 11h30
  5. Ajouter des CHAMPS dans une table via ASP
    Par hysteresis dans le forum Access
    Réponses: 1
    Dernier message: 27/09/2005, 16h39

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo