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 :

Formulaire envoi et preview


Sujet :

Langage PHP

  1. #1
    Candidat au Club
    Femme Profil pro
    Inscrit en
    Mai 2011
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations forums :
    Inscription : Mai 2011
    Messages : 10
    Points : 4
    Points
    4
    Par défaut Formulaire envoi et preview
    Bonjour,

    Je suis en train de m'arracher les cheveux!!

    En fait je dois creer un formulaire, jusque là tout va bien.
    Je souhaite que les utilisateurs entrent nom, adresse, pour l'inscription puis coche les activités qu'ils veulent ( chaque activité ayant un certain cout) .
    Pour ne pas utiliser du JavaScript (il parait que ceux qui le désactive seront embétés) je fait tout en php pour afficher ma preview avec le cout de leur activité.

    Donc dans un premier fichier il y a mon form, dans un deuxieme ma preview qui rappelle toutes mes variables pour les mettre en forme et dans un troisième mon envoi à mysql.

    Pensez vous que ce soit une bonne solution.
    Car je lis beaucoup de forum et je vois pleins de solution différentes...
    Et à chaque fois je change tout mes fichieer pour essayer d'autre soluce...

    D'avance merci!!

  2. #2
    Membre averti Avatar de Nheo_
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2011
    Messages
    323
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2011
    Messages : 323
    Points : 416
    Points
    416
    Par défaut
    Bonjour,

    Sachant que tu veux tout faire en PHP cette solution est correcte. Avec quelles autres solutions hésites-tu ?

    Rencontres-tu des problèmes pour la mettre en place ?

  3. #3
    Candidat au Club
    Femme Profil pro
    Inscrit en
    Mai 2011
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations forums :
    Inscription : Mai 2011
    Messages : 10
    Points : 4
    Points
    4
    Par défaut
    En fait si réellement le javaScript pose pb, je prendrai cette solution.
    Mais il facilite quand même beaucoup la tache et rend plus esthétique.
    Mon pb est que je perds mes variables entre preview et validation

    JE n'arrive pas à utiliser session pour ça.
    J'ai déjà essayer et ça ne marche..

    Merci

  4. #4
    Membre averti Avatar de Nheo_
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2011
    Messages
    323
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2011
    Messages : 323
    Points : 416
    Points
    416
    Par défaut
    Citation Envoyé par flo4020 Voir le message
    En fait si réellement le javaScript pose pb, je prendrai cette solution.
    Mais il facilite quand même beaucoup la tache et rend plus esthétique.
    Mon pb est que je perds mes variables entre preview et validation

    JE n'arrive pas à utiliser session pour ça.
    J'ai déjà essayer et ça ne marche..

    Merci
    Montre le code des trois fichiers, sinon il est impossible de t'aider.

  5. #5
    Candidat au Club
    Femme Profil pro
    Inscrit en
    Mai 2011
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations forums :
    Inscription : Mai 2011
    Messages : 10
    Points : 4
    Points
    4
    Par défaut
    Voilà mon form
    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
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    <form name="inscriptions" method="post" action="preview.php" enctype="multipart/form-data"> 
     
    Docteur (nom et prénom) <input name="nom" type="text" size="43"/>
    <p>Adresse <input name="adresse" type="text" size="60" /></p>
    <p>Code Postal  <input name="cp" type="text" size="4" />  Localité  <input name="localite" type="text" size="38" /></p>
    <p>Numéro dordre <input name="no" type="text" size="5" /> Téléphone <input name="tel" type="text" size="10" /> (Sans espace ni /)</p>
    <p>E mail <input name="mail" type="text" size="40" /> </p>
     
    <h2>Je m’inscris pour la/les activités suivantes : (cocher les cases devant les activités)</h2>
     
    <h3>Les soirées conférences</h3>
    <div class="choix">
      <label for="choix1">Jeudi 10 février : Conjoint-aidant et assistante vétérinaire : quel statut, quel contrat? </label>&nbsp;&nbsp;&nbsp;
       <select name="choix1" class="choix">
       <option value="choix11">Je ne participe pas à cette conférence</option>
       <option value="choix12">Conférence seule</option>
       <option value="choix13">Conférencee + Repas</option>
     
       </select>
     
    </div>
    <div class="choix">
      <label for="choix2">Jeudi 9 Juin : Pathologies courantes du lapin de compagnie</label>&nbsp;&nbsp;&nbsp;
       <select name="choix2" class="choix">
        <option value="choix21">Je ne participe pas à cette conférence</option>
       <option value="choix22">Conférence seule</option>
       <option value="choix23"> Conférencee + Repas</option>
     
       </select>
    </div>
    <div class="choix">
      <label for="choix3">Jeudi 15 Décembre : le syndrome obstructif chez les chiens brachicéphales : que faire?</label>&nbsp;&nbsp;&nbsp;
       <select name="choix3" class="choix">
       <option value="choix31">Je ne participe pas à cette conférence</option>
       <option value="choix32">Conférence seule</option>
       <option value="choix33"> Conférence + Repas</option>
       </select>
    </div>
    <h3>La journée conférence</h3>
    <p>
      <label>
        <input type="radio" name="radio1" value="radio11" id="Radio1" checked="checked"/>
        Oui</label>
     
      <label>
        <input type="radio" name="radio1" value="radio12" id="Radio2" />
        Non</label>
      <br />
    </p>
    <h3> Je m'inscris aux tables rondes, je serai recontacté à ce sujet</h3>
    <p>
      <label>
        <input type="radio" name="radio2" value="radio21" id="RadioT1" checked="checked"/>
        Oui</label>
     
      <label>
        <input type="radio" name="radio2" value="radio22" id="RadioT2" />
        Non</label>
      <br />
    </p>
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
    <br  />
    <p></p>
    <input type="submit" name="post" value="Previsualiser" />
     
    </form>
    Voilà ma preview
    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
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    <?php
     
    //Récupérer variable pour prévisualiser :
     
    	$nom=htmlentities($_POST['nom']);
    	$adresse=htmlentities($_POST['adresse']);
    	$cp=htmlentities($_POST['cp']);
    	$localite=htmlentities($_POST['localite']);
    	$no=htmlentities($_POST['no']);
    	$tel=htmlentities($_POST['tel']);
    	$mail=htmlentities($_POST['mail']);
    	$choix1=htmlentities($_POST['choix1']);
    	$choix2=htmlentities($_POST['choix2']);
    	$choix3=htmlentities($_POST['choix3']);
    	$radio1=htmlentities($_POST['radio1']);
    	$radio2=htmlentities($_POST['radio2']);  
     
     
    if($_POST["post"]=="Previsualiser"){
     
    if (empty($nom)){
    echo 'Vous n\'avez pas saisi votre Nom.';
    echo '<p><input type="submit" name="return" tabindex="3" value="  Retour  " onclick="history.back()"></p>';}
    elseif((empty($adresse))or(empty($cp))or(empty($localite))){
    echo'Vous n\'avez pas saisi votre adresse correctement.';
    echo '<p><input type="submit" name="return" tabindex="3" value="  Retour  " onclick="history.back()"></p>';}
    elseif(empty($no)){
    echo'Vous n\'avez pas saisie votre numéro d\'ordre.';
    echo '<p><input type="submit" name="return" tabindex="3" value="  Retour  " onclick="history.back()"></p>';}
    elseif(empty($tel)){
    echo'Vous n\'avez pas saisi votre numéro de téléphone.';
    echo '<p><input type="submit" name="return" tabindex="3" value="  Retour  " onclick="history.back()"></p>';}
    elseif(empty($mail)){
    echo'Vous n\'avez pas saisi votre Email.';
    echo '<p><input type="submit" name="return" tabindex="3" value="  Retour  " onclick="history.back()"></p>';}
    //Si tout est ok
    else{
     
     
    	// j'ai cliqué sur « Prévisualiser »
     
     
    	echo'<h2>Vos coordonnées personnelles :<br/></h2>
    	     <h3>Dr '.$nom.'<br/>
             '.$adresse.'&nbsp;&nbsp;&nbsp;'.$cp.'&nbsp;'.$localite.'<br/>
    	     Numéro d\'ordre : '.$no.'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</strong>Téléphone :'.$tel.'<br/>
             Email : '.$mail.'<br/></h3>';
    	echo '<h2>Vous avez choisi de vous inscrire à la Liégeoise aux activités suivantes :</h2>';
     
    echo '<h3><u>Jeudi 10 février :</u><i> Conjoint-aidant et assistante vétérinaire : quel statut, quel contrat ?</i></h3>';
    	if ($_POST['choix1']=="choix12"){
    		$somme1=20;
    		echo '<h3>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Je participe uniquement à la conférence, j\'ajoute 20€ à ma somme totale</h3><br/>';}
    		elseif ($_POST['choix1']=="choix13"){
    		$somme1=50;
    		echo '<h3>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Je participe à la conférence et au repas, j\'ajoute 50€ à ma somme totale (dont 30€ d\'accompte)</h3><br/>';}
    		else {
    		echo '<h3>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Je ne participe pas à cette conférence</h3><br/>';
    		$somme1=0;}
     
    echo '<h3><u>Jeudi 9 Juin :</u><i> Pathologies courantes du lapin de compagnie </i></h3>';
    	if ($_POST['choix2']=="choix22"){
    		$somme2=20;
    		echo '<h3>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Je participe uniquement à la conférence, j\'ajoute 20€ à ma somme totale</h3><br/>';}
    		elseif ($_POST['choix2']=="choix23"){
    		$somme2=50;
    		echo '<h3>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Je participe à la conférence et au repas, j\'ajoute 50€ à ma somme totale (dont 30€ d\'accompte)</h3><br/>';}
    		else {
    		echo '<h3>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Je ne participe pas à cette conférence</h3><br/>';
    		$somme2=0;}
     
    echo '<h3><u>Jeudi 15 Décembre :</u><i> Le syndrome obstructif chez les chiens brachicéphales : que faire ?</i></h3>';	
    	if ($_POST['choix3']=="choix32"){
    		$somme3=20;
    		echo '<h3>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Je participe uniquement à la conférence, j\'ajoute 20€ à ma somme totale</h3><br/>';}
    		elseif ($_POST['choix3']=="choix33"){
    		$somme3=50;
    		echo '<h3>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Je participe à la conférence et au repas, j\'ajoute 50€ à ma somme totale (dont 30€ d\'accompte)</h3><br/>';}
    		else {
    		echo '<h3>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Je ne participe pas à cette conférence</h3><br/>';
    		$somme3=0;}
     
    echo '<h3><u>Samedi 24 Septembre :</u>';
    	if ($_POST['radio1']=="radio11"){
    		$somme4=50;
    		echo '<h3>Je m\'inscris à la journée conférence et je verse un acompte de 50 euros qui me seront remboursés si je paye par chèques-formation </h3><br/>';}
    		else {
    		echo '<h3>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Je ne participe pas à cette conférence</h3><br/>';
    		$somme4=0;}
    	if ($_POST['radio2']=="radio21"){
        echo '<h3>Je m\'inscris aux tables rondes, je serai recontacté(e) à ce sujet</h3><br/>';}
    	else {
    	echo '<h3>Je ne m\'inscris pas aux tables rondes</h3>';}
     
    $sommetotale=$somme1+$somme2+$somme3+$somme4;
     
    	echo '<h3><font color=#009>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Je verse donc '.$sommetotale.'€ sur le compte de la Liégeoise 143-0605987-32 .</font></h3>';}
     
    echo'
    <form name="inscriptions" method="post" action="validation.php" enctype="multipart/form-data"> 
    <input type="submit" name="valider" value="valider" />
    </form>';}	 
    print_r ($_POST);
     
    ?>
    Avec Array ( [nom] => Dupont [adresse] => rue pasteur [cp] => 95000 [localite] => Paris [no] => 6208 [tel] => 0000000000 [mail] => gerard@hotmail.com [choix1] => choix11 [choix2] => choix21 [choix3] => choix31 [radio1] => radio11 [radio2] => radio21 [post] => Previsualiser )

    Validation.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
    28
    29
    30
    include("fonctions.php");
    if (isset($_POST['valider'])){
     
     
    //On créée une variable date du jour grâce à la fonction date() de PHP
    $today=date("y,m,d");
     
    //On se connecte
    connectInscriptions();
     
    //On corrige les erreurs d'accents
    mysql_query("SET NAMES UTF8"); 
     
    //On prépare la commande sql d'insertion
    $sql = 'INSERT INTO utilisateurs VALUES("","'.$nom.'","'.$adresse.'","'.$cp.'","'.$localite.'","'.$no.'","'.$tel.'","'.$mail.'","'.$choix1.'","'.$choix2.'","'.$choix3.'","'.$radio1.'","'.$radio2.'","'.$today.'","'.$sommetotale.'")';
     
    /*on lance la commande (mysql_query) et au cas où, 
    on rédige un petit message d'erreur si la requête ne passe pas (or die) 
    (Message qui intègrera les causes d'erreur sql)*/
    mysql_query ($sql) or die ('Erreur SQL !'.$sql.'<br />'.mysql_error()); 
     
    // on ferme la connexion
    mysql_close();
     
    echo 'Votre inscription a bien été prise en compte';
     
    print_r ($_POST);
    }
    }
    ?>
    Avec Array ( [valider] => valider )

    Et dans mysql évidemment c vide...

  6. #6
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 372
    Points
    16 372
    Par défaut
    Ton script validation.php ne connait pas les champs que tu essayes d'enregistrer, parce qu'ils viennent d'un formulaire 2 pages plus tôt.
    Ce qu'il faut que tu fasses, c'est stocker tes informations en session pour pouvoir les faire parvenir à ton script final Formulaire réparti sur plusieurs pages

  7. #7
    Candidat au Club
    Femme Profil pro
    Inscrit en
    Mai 2011
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations forums :
    Inscription : Mai 2011
    Messages : 10
    Points : 4
    Points
    4
    Par défaut
    Je teste ça merci!

  8. #8
    Candidat au Club
    Femme Profil pro
    Inscrit en
    Mai 2011
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations forums :
    Inscription : Mai 2011
    Messages : 10
    Points : 4
    Points
    4
    Par défaut
    Voilà ce que j'ai essayé
    Je n'ai repris le code que pour une variable

    Inscription.php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <?php session_start();?>
    <form name="inscriptions" method="post" action="preview.php" enctype="multipart/form-data"> 
     
    Docteur (nom et prénom) <input name="nom" type="text" size="43"/>Nom</form>
    Preview.php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <?php
    php session_start();
    $_SESSION['nom'] = $_POST['nom'];
     
    if($_POST["post"]=="Previsualiser"){
    echo'<form name="inscriptions" method="post" action="validation.php" enctype="multipart/form-data"> 
    <input type="submit" name="valider" value="valider" />
    </form>'; ?>

    Validation.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
    <?php
    session_start();
    $_SESSION['nom'] = $_POST['nom'];
     
    include("fonctions.php");
     
    if (isset($_POST['valider'])){
     
    $today=date("y,m,d");
     
    connectInscriptions();
     
    mysql_query("SET NAMES UTF8"); 
     
    $sql = 'INSERT INTO utilisateurs VALUES("","'.$nom.'","'.$adresse.'","'.$cp.'","'.$localite.'","'.$no.'","'.$tel.'","'.$mail.'","'.$choix1.'","'.$choix2.'","'.$choix3.'","'.$radio1.'","'.$radio2.'","'.$today.'","'.$sommetotale.'")';
     
    mysql_query ($sql) or die ('Erreur SQL !'.$sql.'<br />'.mysql_error()); 
     
    mysql_close();
     
    echo 'Votre inscription a bien été prise en compte';
     
    print_r ($_POST);
     
    }
    ?>
    Mais ça ne marche pas,je n'arrive pas à utiliser SESSION...

Discussions similaires

  1. Formulaire envoie automatique
    Par LDDL dans le forum Langage
    Réponses: 12
    Dernier message: 19/10/2006, 18h13
  2. Formulaire envoi GET
    Par jmjmjm dans le forum Langage
    Réponses: 8
    Dernier message: 13/09/2006, 16h04
  3. Formulaire - Envoi
    Par rockingstone dans le forum Langage
    Réponses: 1
    Dernier message: 19/08/2006, 13h55
  4. Formulaire. Envoi infos dans base mysql + envoi email
    Par Donald08 dans le forum SQL Procédural
    Réponses: 2
    Dernier message: 10/08/2006, 13h28
  5. Formulaire envoie un .jpg
    Par Le Mad dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 24/05/2006, 17h41

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