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

PHP & Base de données Discussion :

Formulaire avec choix lié [MySQL]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de fazpedro
    Homme Profil pro
    Inscrit en
    Août 2009
    Messages
    506
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 506
    Par défaut Formulaire avec choix lié
    Bonjour,
    je souhaite avoir sur un formulaire d'insertion d'évènements :

    Si l'on choisit Gratuit => pas d'autre demande
    Si l'on choisit Payant => on demande le tarif en euros

    Merci d 'avance.

    un bout du code concerné :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <label for="ev6">Tarif</label> 
    <select name="tarif" tabindex="4" 
    onfocus="this.className='textarea_focus';" onblur="this.className='';valide(this, 'err_nom');" class="ev">
    <option value="Gratuit"> Gratuit </option>
    <option value="Payant"> Payant </option>
    </select><span id="err_nom" style="color:red"></span>

  2. #2
    Membre expérimenté Avatar de Retrokiller069
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2010
    Messages
    217
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2010
    Messages : 217
    Par défaut
    Bonjour,

    je pense que cela concerne plus le forum javascript, où du moins je le verrai comme ca. A vue d'oeil tu voudrais que lorsqu'un utilisateur choisie gratuit ou payant un champs input soit visible ou non:

    en mettant un identifiant sur le select voila un petite solution qui devrait marcher:

    Javascript:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    <script>
    function showT(){
    	var elem = document.getElementById("idSelect");
    	var elem2 = document.getElementById("idInput");
    if(elem.value.match("Gratuit")){elem2.style.visibility="hidden"}
    else{elem2.style.visibility="visible"}
    }
    </script>
    HTML
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    <select id="idSelect" name="tarif" tabindex="4" 
    onfocus="this.className='textarea_focus';" onblur="this.className='';valide(this, 'err_nom');" class="ev"
    onchange="showT();">
    <option value="Gratuit"> Gratuit </option>
    <option value="Payant"> Payant </option>
    </select>
    <input type="text" style="visibility:hidden" id="idInput"/>
    Je n'ai pas testé mais j'ai récupéré des bouts de code que j'avais fait ^^

  3. #3
    Membre éclairé Avatar de fazpedro
    Homme Profil pro
    Inscrit en
    Août 2009
    Messages
    506
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 506
    Par défaut
    Salut Retrokiller069 !
    j'ai essayé ton code mais cela m'affiche "Gratuit" ou "Payant" mais pas autre chose si je sélectionne "Payant"... zone de saisie pour indiquer le tarif en euros ?
    merci.

  4. #4
    Invité
    Invité(e)
    Par défaut
    Bonjour,
    2 choses :
    - remplacer <script> par <script type="text/javascript">
    - et ... vérifier que javascript est bien activé dans le navigateur !
    avec par ex. : <script type="text/javascript">alert('javascript OK');</script>

  5. #5
    Membre éclairé Avatar de fazpedro
    Homme Profil pro
    Inscrit en
    Août 2009
    Messages
    506
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 506
    Par défaut
    je met mes codes complets qui ne fonctionnent toujours pas...
    merci !!!

    annoncer2.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
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
    <head>
    <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />	
    <title>MON SITE</title>
    <link rel="stylesheet" type="text/css" href="style.css" />
     
     <!-- début de tarif caché si gratuit -->
    <script type="text/javascript">
    function showT(){
    	var elem = document.getElementById("idSelect");
    	var elem2 = document.getElementById("idInput");
    if(elem.value.match("Gratuit")){elem2.style.display='none'}
    else{elem2.style.display='block'}
    }
    </script>
    <!-- fin de tarif caché si gratuit -->
     
    <script type="text/javascript">alert('javascript OK');</script> 
     
    <!-- début de la vérification si tout est saisi -->
    <script type="text/javascript">
    function valide(txt, err_id)
    { document.getElementById(err_id).innerHTML= (txt.value=="") ? "Attention &agrave; bien remplir toutes les cases !" : "&nbsp;"; }
    </script>
    <!-- fin de la vérification si tout est saisi -->
     
    </head>
     
    <body>
     
    <?php include('bandeau.php'); ?> <!-- insère le bandeau principal en haut -->
     
    <?php include('annoncer3.php'); ?> <!-- insère la requête -->
     
    <div id="mainContent">
    <br />
    <br />
    <a>Bonjour &nbsp; &nbsp;<strong><? echo $pseudo; ?></strong></a>
    <br />
    <a>Votre mail &nbsp; : &nbsp;<b><? echo $mail; ?></b></a>
    <br />
    <a href="pdf_espace_membre_changeinfo.php">Modifier mes informations</a>
    <br />
    <a href="pdf_deconnexion.php">D&eacute;connexion</a>
    <br />
    <?php include('formulaire_insertion.php'); ?> <!-- insère le formulaire d'insertion -->
    <br />
    <br />
    </div>
    <?php include('bas_de_page.php'); ?> <!-- insère le bas de page  -->
    </body>
    </html>
    formulaire_insertion.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
    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
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    <form method="post" action="insertion.php">
    <p />
    <br />
    <fieldset>
    <legend> &nbsp; Annoncer un &eacute;v&egrave;nement &nbsp; </legend>
    <label for="ev3">Type d&rsquo; &eacute;v&egrave;nement</label>
    	<select name="evenement2" tabindex="1" class="ev" onfocus="this.className='textarea_focus';" onblur="this.className='';">
    	<option value="Concert">Concert</option>
        <option value="Spectacle" >Spectacle</option>
        <option value="Th&eacute;&acirc;tre">Th&eacute;&acirc;tre</option>
    	<option value="Exposition">Exposition</option>
    	<option value="Conf&eacute;rence">Conf&eacute;rence</option>
    	<option value="Lecture_Conte">Lecture_Conte</option>
    	<option value="Animation">Animation</option>
    	<option value="Op&eacute;ra">Op&eacute;ra</option>
        <option value="Autres">Autres</option>
    	</select>
    	<br />
    	<br />
    <label for="ev4">Type de lieu</label>
    	<select name="lieu2" tabindex="2" class="ev" onfocus="this.className='textarea_focus';" onblur="this.className='';">
    	<option value="Bar">Bar</option>
    	<option value="Salle_Concert">Salle_Concert</option>
    	<option value="Salle_Expo">Salle_Expo</option>
    	<option value="Th&eacute;&acirc;tre">Th&eacute;&acirc;tre</option>
    	<option value="Cin&eacute;ma">Cin&eacute;ma</option>
    	<option value="Ext&eacute;rieur">Ext&eacute;rieur</option>
    	<option value="Biblioth&egrave;que">Biblioth&egrave;que</option>
    	<option value="Mus&eacute;e">Mus&eacute;e</option>
        <option value="Autres">Autres</option>
    	</select>
    	<br />
    	<br />
    <label for="ev5">Secteur</label>
    	<select name="secteur" tabindex="3" class="ev" onfocus="this.className='textarea_focus';" onblur="this.className='';">
    	<option value="Caen">Caen</option>
    	<option value="Agglom&eacute;ration_Caen">Agglom&eacute;ration_Caen</option>
    	<option value="Calvados hors Caen">Calvados hors Caen</option>
    	<option value="Manche">Manche</option>
    	<option value="Orne">Orne</option>
    	<option value="Autres">Autres</option>
    	</select>
    	<br />
    	<br />
     
    <label for="ev6">Tarif :</label>
    <select id="idSelect" name="tarif" tabindex="4" 
    onfocus="this.className='textarea_focus';" onchange="showT();" onblur="this.className='';valide(this, 'err_nom');" class="ev">
    <option value="Gratuit"> Gratuit </option>
    <option value="Payant"> Payant </option>
    </select>
    <input type="text" id="idInput" tabindex="4" name="tarif" onfocus="this.className='textarea_focus';" onblur="this.className='';valide(this, 'err_nom');" class="ev" /><span id="err_nom" style="color:red"></span>
    <span id="err_nom" style="color:red"></span>
     
    <br />
    <br />
    <label for="ev7">Nom du lieu :</label> <input type="text" tabindex="5" name="lieu3" onfocus="this.className='textarea_focus';" onblur="this.className='';valide(this, 'err_nom');" class="ev" /><span id="err_nom" style="color:red"></span>
    <br />
    <br />
    <label for="ev8">Heure de d&eacute;but</label> <input type="text" tabindex="6" name="debut" onfocus="this.className='textarea_focus';" onblur="this.className='';valide(this, 'err_nom');" class="ev" /><span id="err_nom" style="color:red"></span>
    <br />
    <br />
    <label for="ev9">Nom :</label> <input type="text" name="nom4" tabindex="7" onfocus="this.className='textarea_focus';" onblur="this.className='';valide(this, 'err_nom');" class="ev" /><span id="err_nom" style="color:red"></span>
    <br />
    <br />
    <label for="jour">Date :</label>
    	<select name="jour" class="jj" tabindex="8" onfocus="this.className='jj_focus';" onblur="this.className='';">
    	<option value="01" selected="selected">01</option>
    	<option value="02">02</option>
    	<option value="03">03</option>
    	<option value="04">04</option>
    	<option value="05">05</option>
    	<option value="06">06</option>
    	<option value="07">07</option>
    	<option value="08">08</option>
    	<option value="09">09</option>
    	<option value="10">10</option>
    	<option value="11">11</option>
    	<option value="12">12</option>
    	<option value="13">13</option>
    	<option value="14">14</option>
    	<option value="15">15</option>
    	<option value="16">16</option>
    	<option value="17">17</option>
    	<option value="18">18</option>
    	<option value="19">19</option>
    	<option value="20">20</option>
    	<option value="21">21</option>
    	<option value="22">22</option>
    	<option value="23">23</option>
    	<option value="24">24</option>
    	<option value="25">25</option>
    	<option value="26">26</option>
    	<option value="27">27</option>
    	<option value="28">28</option>
    	<option value="29">29</option>
    	<option value="30">30</option>
    	<option value="31">31</option>
    	</select>
     
    	<label for="mois"></label>
    	<select name="mois" class="mm" tabindex="9" onfocus="this.className='mm_focus';" onblur="this.className='';valide(this, 'err_nom');">
    	<option value="01" selected="selected">Janvier</option>
    	<option value="02">F&eacute;vrier</option>
    	<option value="03">Mars</option>
    	<option value="04">Avril</option>
    	<option value="05">Mai</option>
    	<option value="06">Juin</option>
    	<option value="07">Juillet</option>
    	<option value="08">Ao&ucirc;t</option>
    	<option value="09">Septembre</option>
    	<option value="10">Octobre</option>
    	<option value="11">Novembre</option>
    	<option value="12">D&eacute;cembre</option>
    	</select>
    <br />
    <br />
     
    <label for="coment">Description </label>
    <textarea name="comments" tabindex="10" onfocus="this.className='textarea_focus';" onblur="this.className='';valide(this, 'err_nom');"></textarea>
     
    </fieldset>
     
    <br />
    <br />
     
    <p>
    <input type="submit" tabindex="11" value="Envoyer" />
    <input type="reset" tabindex="12" value="Tout effacer" />
    </p>
     
    </form>
    annoncer3.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
    <?php
    //On ouvre la session pour pouvoir verifier si le membre est connecté
    @session_start();
    // accès à la base de données
    require("configuration.php");
    //Le code pour verifier qu'une session existe
    if (!isset($_SESSION['pseudo']))
    {
    echo '<strong>'.'Vous n\'êtes pas autoris&eacute; &agrave; acc&eacute;der &agrave; cette page '.'</strong>';
    }
    else
    {
    $sql = connect_sql();
    $pseudo_membre = $_SESSION['pseudo'];
    $requete = mysql_query("SELECT * FROM pdf_membre WHERE `pseudo`='$pseudo_membre'"); 
    $result = mysql_fetch_array ($requete);
    $id = $result['id'];
    $pseudo = $result['pseudo'];
    $mail = $result['mail'];
    }
    /* On peut recuperer plus d'info si besoin */
    ?>
    PS qui n'a rien à voir... : est-ce que je peux changer de pseudo sans changer de mail ?

  6. #6
    Invité
    Invité(e)
    Par défaut
    dans formulaire_insertion.php :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <input type="text" id="idInput" tabindex="4" name="tarif" style="display:none;"  onfocus="this.className='textarea_focus';" onblur="this.className='';valide(this, 'err_nom');" class="ev" />
    <span id="err_nom" style="color:red"></span>
    PS : comme tu as mis dans ta page :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <script type="text/javascript">alert('javascript OK');</script>
    -> tu devrais voir une popup afficher "javascript OK"
    -> SI CE N'EST PAS LE CAS => ca veut dire que javascript est DESACTIVE sur ton navigateur !

    • Firefox : -> "Outils" -> "Options" -> onglet "Contenu" -> "Activer javascript"
    • Internet Explorer : Outils -> Options Internet -> Securite -> Internet -> Personnaliser le niveau -> cocher les 3 cases "activer" de la rubrique script
    • Mozilla : Edition -> Preferences -> Avancées -> Scripts et plugins -> cocher la case "Activer le javascript" pour le navigateur
    • Opera : Outils -> Preferences >- Avance -> Content -> cocher la case "Activer le javascript"
    Dernière modification par Invité ; 01/07/2011 à 22h16.

  7. #7
    Membre éclairé Avatar de fazpedro
    Homme Profil pro
    Inscrit en
    Août 2009
    Messages
    506
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 506
    Par défaut
    merci jreaux62 !

    C'est presque bon : pas de case si Gratuit et une case à remplir si Payant,
    ça c'est super ! mais...

    quand j'indique Payant et le montant dans la case : OK, je récupère bien le montant quand j'affiche ma base de données dans "Tarif"

    mais quand j'indique Gratuit, je n'ai rien dans ma base de données dans la colonne "Tarif" alors que je voudrais qu'il m'affiche "Gratuit"...

    Merci.

  8. #8
    Invité
    Invité(e)
    Par défaut
    C'est là qu'est l'os :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <select id="idSelect" name="tarif" tabindex="4" 
    onfocus="this.className='textarea_focus';" onchange="showT();" onblur="this.className='';valide(this, 'err_nom');" class="ev">
    <option value="Gratuit"> Gratuit </option>
    <option value="Payant"> Payant </option>
    </select>
    <input type="text" id="idInput" tabindex="4" name="tarif" style="display:none;" ...
    le "select" et l'"input" ont le meme "name" : il faut mettre des noms différents.

  9. #9
    Membre éclairé Avatar de fazpedro
    Homme Profil pro
    Inscrit en
    Août 2009
    Messages
    506
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 506
    Par défaut
    Eh oui jreaux62 ! il me manquait une colonne dans ma base de données...

    j'ai mis deux colonnes : une "Tarif" et une autre "Montant" et modifié en conséquence les codes qui fonctionnent à merveille ! encore merci.

    voici les codes corrigés complets :

    insertion.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
    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
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    <?php include('bandeau.php'); ?> <!-- insère le bandeau principal en haut -->
    <div id="mainContent">
    <table>
    <?php
    @session_start(); //On ouvre la session pour pouvoir verifier si le membre est connecté
    if (!isset($_SESSION['pseudo'])) //Le code pour verifier qu'une session existe
    {
    die('<b>'.'Vous n\'êtes pas autoris&eacute; &agrave; acc&eacute;der &agrave; cette page !'.'</b>'); //Si non, on arrete le script et on affiche un message
    }
    $pseudo_membre2 = $_SESSION['pseudo'];
     
    // On commence par récupérer les champs
    if(isset($_POST['evenement2'])) $evenement2=$_POST['evenement2'];
    else $evenement2="";
    if(isset($_POST['lieu2'])) $lieu2=$_POST['lieu2'];
    else $lieu2="";
    if(isset($_POST['secteur'])) $secteur=$_POST['secteur'];
    else $secteur="";
    if(isset($_POST['tarif'])) $tarif=$_POST['tarif'];
    else $tarif="";
    if(isset($_POST['montant'])) $montant=$_POST['montant'];
    else $montant="";
    if(isset($_POST['lieu3'])) $lieu3=$_POST['lieu3'];
    else $lieu3="";
    if(isset($_POST['debut'])) $debut=$_POST['debut'];
    else $debut="";
    if(isset($_POST['nom4'])) $nom4=$_POST['nom4'];
    else $nom4="";
    if(isset($_POST['jour'])) $jour=$_POST['jour'];
    else $jour="";
    if(isset($_POST['mois'])) $mois=$_POST['mois'];
    else $mois="";
    if(isset($_POST['comments'])) $comments=$_POST['comments'];
    else $comments="";
     
    // On ne vérifie pas l'année !
    if(isset($_POST['annee'])) $annee=$_POST['annee'];
    else $annee="2011";
     
    // On vérifie si les champs sont vides
    if(empty($evenement2) OR empty($lieu2) OR empty($secteur) OR empty($tarif) OR empty($lieu3) 
    OR empty($debut) OR empty($nom4) OR empty($comments) OR empty($jour) OR empty($mois) OR empty($pseudo_membre2))
    {
        echo '<b>'.'attention les champs ne sont pas bien remplis ! vérifier les données ci-dessous en gras : '.'</b>';
        echo '<br />';
        echo 'Type d&rsquo; &eacute;v&egrave;nement : '.'<b>'.$evenement2.'</b>';
    	echo '<br />';
        echo 'Type de lieu : '.'<b>'.$lieu2.'</b>';
    	echo '<br />';
        echo 'Secteur : '.'<b>'.$secteur.'</b>';
    	echo '<br />';
        echo 'Tarif : '.'<b>'.$tarif.'</b>';
    	echo '<br />';
        echo 'Nom du lieu : '.'<b>'.$lieu3.'</b>';
    	echo '<br />';
        echo 'Début : '.'<b>'.$debut.'</b>';
    	echo '<br />';
        echo 'Description : '.'<b>'.$comments.'</b>';
    	echo '<br />';
        echo 'Nom : '.'<b>'.$nom4.'</b>';
    	echo '<br />';
        echo 'Jour : '.'<b>'.$jour.'</b>';
    	echo '<br />';
    	echo 'Mois : '.'<b>'.$mois.'</b>';
    	echo '<br />';
    	echo 'Pseudo : '.'<b>'.$pseudo_membre2.'</b>';
    	echo '<br />';
    	echo '<a href="javascript:window.history.go(-1)">'.'Retour'.'</a>'; // retour en page précédente
    }
    // Aucun champ n'est vide, on peut continuer
     
    {
    // vérification du commentaire
    $comment_verif=$_POST['comments'];
    // liste des mots a bannir dans un tableau
    $tb = array("enfoiré","idiot","naze");
    // initialise le compteur
    $j=0;
    // boucle sur la quantité des valeur du tableau $tb
    while ($j<sizeof($tb))
    {
    // le masque avec les délimitateurs
    $masque = '~\b'.$tb[$j].'\b~';
    // la condition avec le test sur les mots du texte
    if( preg_match_all($masque, $comment_verif, $matches))
     {	// le message d'erreur
     echo '<br />Mots non autorisés dans le commentaire : <strong>'.$matches[0][0].'</strong>';
     }
    // + 1 dans le compteur, on continue de boucler sur tous les mots bannis
     $j++;
    }
     
    // création de la date au format date MySQL
    $date_ev=$annee.'-'.$_POST['mois'].'-'.$_POST['jour'];
     
    // connexion à la base
    require("configuration.php");
    $sql = connect_sql();
     
    // on écrit la requête sql
    mysql_query("SET NAMES latin1");
    $query = "SELECT * FROM evenement WHERE nom='$nom4' and lieu='$lieu3' and date_ev='$date_ev'";
    $result = mysql_query($query);
    $res = mysql_num_rows($result);
    // Recuperation des resultats
    if ($res==0)
    {
    $sql = "INSERT INTO evenement(type_evenement, type_etab, secteur, heure, tarif, montant, lieu, nom, description, date_ev, pseudo_ev) 
    VALUES('$evenement2','$lieu2','$secteur','$debut','$tarif','$montant','$lieu3','$nom4','$comments','$date_ev','$pseudo_membre2')";
    // on insère les informations du formulaire dans la table
    mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());
    // on affiche le résultat pour le visiteur
    echo '<p>'.'</p>'."\n";
    echo '<b>'.'les informations suivantes ont été ajoutées dans notre agenda'.'</b>';
        echo '<br />';
        echo 'Type d&rsquo; &eacute;v&egrave;nement : '.'<b>'.$evenement2.'</b>';
    	echo '<br />';
        echo 'Type de lieu : '.'<b>'.$lieu2.'</b>';
    	echo '<br />';
        echo 'Secteur : '.'<b>'.$secteur.'</b>';
    	echo '<br />';
        echo 'Tarif : '.'<b>'.$tarif.'</b>';
    	echo '<br />';
    	echo 'Montant : '.'<b>'.$montant.'</b>';
    	echo '<br />';
        echo 'Nom du lieu : '.'<b>'.$lieu3.'</b>';
    	echo '<br />';
        echo 'Début : '.'<b>'.$debut.'</b>';
    	echo '<br />';
        echo 'Description : '.'<b>'.$comments.'</b>';
    	echo '<br />';
        echo 'Nom : '.'<b>'.$nom4.'</b>';
    	echo '<br />';
        echo 'Date : '.'<b>'.$jour.' / '.$mois.'</b>';
    	echo '<br />';
        echo '<br />';
     
    mysql_close();  // on ferme la connexion
    }
     
    // si entrée déjà effectuée
    else
    {
    echo '<br />';
    echo '<b>'.'Attention : &eacute;v&egrave;nement déjà saisi dans l\'agenda !'.'</b>';
    echo '<br />';
    echo '<a href="javascript:window.history.go(-1)">'.'Retour'.'</a>'; // retour en page précédente
     
    //On fait une boucle pour sortir toutes les entrées lieu / nom / date déjà saisies à cette date
    while($affiche = mysql_fetch_array($result))
     {
    //On remet la date au format français
    setlocale (LC_TIME, 'fr_FR.UTF8');
    $date_affiche = $affiche["date_ev"];
    $date_vue = strftime("%A %d %B",strtotime("$date_affiche"));
     //On affiche les entrées
    echo '<p>'.'</p>';
    echo '<b>'."<div class='recherche'>".$affiche["type_evenement"]."   ".'</b>'."</div>";
    echo '<p>'.'</p>';
    echo "<div class='recherche'>"."    > ".$affiche["type_etab"]."   "."</div>";
    echo '<b>'."<div class='recherche'>"."    > ".$date_vue."   ".'</b>'."</div>";
    echo "<div class='recherche'>"."    > ".$affiche["secteur"]."   "."</div>";
    echo "<div class='recherche'>"."Début à : ".$affiche["heure"]."   "."</div>";
    echo "<div class='recherche'>"."  Tarif : ".$affiche["tarif"]."   "."</div>";
    echo "<div class='recherche'>"."  Montant : ".$affiche["montant"]."   "."</div>";
    echo "<div class='recherche'>"." où ? ".$affiche["lieu"]."   "."</div>";
    echo '<b>'."<div class='recherche'>"." qui ? ".$affiche["nom"]."   ".'</b>'."</div>";
    echo '<p>'.'</p>';
    echo "<div class='recherche'>"."      < ".$affiche["description"]."   "."</div>";
    echo '<br>'.'</br>';
    //On ferme la boucle while
    }
    // fin de la deuxième boucle else
    }
    // fin de la première boucle else
    }
     
    ?>
     
    </table>
     
    <br />
     
    <a href="index.php">Retour &agrave; l'accueil</a>
    <p />
    <a href="pdf_deconnexion.php">D&eacute;connexion</a>
    <p />
    <a href="javascript:window.history.go(-1)">Retour &agrave; l'insertion dans l'agenda</a>
    <p />
    </div>
    <?php include('bas_de_page.php'); ?> <!-- insère le bas de page  -->
    annoncer2.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
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
    <head>
    <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />	
    <title>MON SITE</title>
    <link rel="stylesheet" type="text/css" href="style.css" />
     
     <!-- début de tarif caché si gratuit -->
    <script type="text/javascript">
    function showT(){
    	var elem = document.getElementById("idSelect");
    	var elem2 = document.getElementById("idInput");
    if(elem.value.match("Gratuit")){elem2.style.display='none'}
    else{elem2.style.display='block'}
    }
    </script>
    <!-- fin de tarif caché si gratuit -->
     
    <!-- début de la vérification si tout est saisi -->
    <script type="text/javascript">
    function valide(txt, err_id)
    { document.getElementById(err_id).innerHTML= (txt.value=="") ? "Attention &agrave; bien remplir toutes les cases !" : "&nbsp;"; }
    </script>
    <!-- fin de la vérification si tout est saisi -->
     
    </head>
     
    <body>
     
    <?php include('bandeau.php'); ?> <!-- insère le bandeau principal en haut -->
     
    <?php include('annoncer3.php'); ?> <!-- insère la requête -->
     
    <div id="mainContent">
    <br />
    <br />
    <a>Bonjour &nbsp; &nbsp;<strong><? echo $pseudo; ?></strong></a>
    <br />
    <a>Votre mail &nbsp; : &nbsp;<b><? echo $mail; ?></b></a>
    <br />
    <a href="pdf_espace_membre_changeinfo.php">Modifier mes informations</a>
    <br />
    <a href="pdf_deconnexion.php">D&eacute;connexion</a>
    <br />
    <?php include('formulaire_insertion.php'); ?> <!-- insère le formulaire d'insertion -->
    <br />
    <br />
    </div>
    <?php include('bas_de_page.php'); ?> <!-- insère le bas de page  -->
    </body>
    </html>

    formulaire_insertion.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
    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
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    <form method="post" action="insertion.php">
    <p />
    <br />
    <fieldset>
    <legend> &nbsp; Annoncer un &eacute;v&egrave;nement &nbsp; </legend>
    <label for="ev3">Type d&rsquo; &eacute;v&egrave;nement</label>
    	<select name="evenement2" tabindex="1" class="ev" onfocus="this.className='textarea_focus';" onblur="this.className='';">
    	<option value="Concert">Concert</option>
        <option value="Spectacle" >Spectacle</option>
        <option value="Th&eacute;&acirc;tre">Th&eacute;&acirc;tre</option>
    	<option value="Exposition">Exposition</option>
    	<option value="Conf&eacute;rence">Conf&eacute;rence</option>
    	<option value="Lecture_Conte">Lecture_Conte</option>
    	<option value="Animation">Animation</option>
    	<option value="Op&eacute;ra">Op&eacute;ra</option>
        <option value="Autres">Autres</option>
    	</select>
    	<br />
    	<br />
    <label for="ev4">Type de lieu</label>
    	<select name="lieu2" tabindex="2" class="ev" onfocus="this.className='textarea_focus';" onblur="this.className='';">
    	<option value="Bar">Bar</option>
    	<option value="Salle_Concert">Salle_Concert</option>
    	<option value="Salle_Expo">Salle_Expo</option>
    	<option value="Th&eacute;&acirc;tre">Th&eacute;&acirc;tre</option>
    	<option value="Cin&eacute;ma">Cin&eacute;ma</option>
    	<option value="Ext&eacute;rieur">Ext&eacute;rieur</option>
    	<option value="Biblioth&egrave;que">Biblioth&egrave;que</option>
    	<option value="Mus&eacute;e">Mus&eacute;e</option>
        <option value="Autres">Autres</option>
    	</select>
    	<br />
    	<br />
    <label for="ev5">Secteur</label>
    	<select name="secteur" tabindex="3" class="ev" onfocus="this.className='textarea_focus';" onblur="this.className='';">
    	<option value="Caen">Caen</option>
    	<option value="Agglom&eacute;ration_Caen">Agglom&eacute;ration_Caen</option>
    	<option value="Calvados hors Caen">Calvados hors Caen</option>
    	<option value="Manche">Manche</option>
    	<option value="Orne">Orne</option>
    	<option value="Autres">Autres</option>
    	</select>
    	<br />
    	<br />
     
     
    <label for="ev6">Tarif :</label>
    <select id="idSelect" name="tarif" tabindex="4" 
    onfocus="this.className='textarea_focus';" onchange="showT();" onblur="this.className='';valide(this, 'err_nom');" class="ev">
    <option value="Gratuit"> Gratuit </option>
    <option value="Payant"> Payant </option>
    </select>
    <input type="text" id="idInput" tabindex="4" name="montant" style="display:none;"  onfocus="this.className='textarea_focus';" onblur="this.className='';valide(this, 'err_nom');" class="ev" /> <span id="err_nom" style="color:red"></span>
    <span id="err_nom" style="color:red"></span>
     
    <br />
    <br />
    <label for="ev7">Nom du lieu :</label> <input type="text" tabindex="5" name="lieu3" onfocus="this.className='textarea_focus';" onblur="this.className='';valide(this, 'err_nom');" class="ev" /><span id="err_nom" style="color:red"></span>
    <br />
    <br />
    <label for="ev8">Heure de d&eacute;but</label> <input type="text" tabindex="6" name="debut" onfocus="this.className='textarea_focus';" onblur="this.className='';valide(this, 'err_nom');" class="ev" /><span id="err_nom" style="color:red"></span>
    <br />
    <br />
    <label for="ev9">Nom :</label> <input type="text" name="nom4" tabindex="7" onfocus="this.className='textarea_focus';" onblur="this.className='';valide(this, 'err_nom');" class="ev" /><span id="err_nom" style="color:red"></span>
    <br />
    <br />
    <label for="jour">Date :</label>
    	<select name="jour" class="jj" tabindex="8" onfocus="this.className='jj_focus';" onblur="this.className='';">
    	<option value="01" selected="selected">01</option>
    	<option value="02">02</option>
    	<option value="03">03</option>
    	<option value="04">04</option>
    	<option value="05">05</option>
    	<option value="06">06</option>
    	<option value="07">07</option>
    	<option value="08">08</option>
    	<option value="09">09</option>
    	<option value="10">10</option>
    	<option value="11">11</option>
    	<option value="12">12</option>
    	<option value="13">13</option>
    	<option value="14">14</option>
    	<option value="15">15</option>
    	<option value="16">16</option>
    	<option value="17">17</option>
    	<option value="18">18</option>
    	<option value="19">19</option>
    	<option value="20">20</option>
    	<option value="21">21</option>
    	<option value="22">22</option>
    	<option value="23">23</option>
    	<option value="24">24</option>
    	<option value="25">25</option>
    	<option value="26">26</option>
    	<option value="27">27</option>
    	<option value="28">28</option>
    	<option value="29">29</option>
    	<option value="30">30</option>
    	<option value="31">31</option>
    	</select>
     
    	<label for="mois"></label>
    	<select name="mois" class="mm" tabindex="9" onfocus="this.className='mm_focus';" onblur="this.className='';valide(this, 'err_nom');">
    	<option value="01" selected="selected">Janvier</option>
    	<option value="02">F&eacute;vrier</option>
    	<option value="03">Mars</option>
    	<option value="04">Avril</option>
    	<option value="05">Mai</option>
    	<option value="06">Juin</option>
    	<option value="07">Juillet</option>
    	<option value="08">Ao&ucirc;t</option>
    	<option value="09">Septembre</option>
    	<option value="10">Octobre</option>
    	<option value="11">Novembre</option>
    	<option value="12">D&eacute;cembre</option>
    	</select>
    <br />
    <br />
     
    <label for="coment">Description </label>
    <textarea name="comments" tabindex="10" onfocus="this.className='textarea_focus';" onblur="this.className='';valide(this, 'err_nom');"></textarea>
     
    </fieldset>
     
    <br />
    <br />
     
    <p>
    <input type="submit" tabindex="11" value="Envoyer" />
    <input type="reset" tabindex="12" value="Tout effacer" />
    </p>
     
    </form>

  10. #10
    Membre éclairé Avatar de fazpedro
    Homme Profil pro
    Inscrit en
    Août 2009
    Messages
    506
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 506
    Par défaut
    Bonjour tout le monde,
    en fait j'ai oublié une chose sur le formulaire :
    quand je choisit "Payant", et que je tabule, j'arrive sur "Nom du lieu" au lieu d'être sur la case "montant" juste après "Payant".... où est mon erreur sur les tabulations ?
    Merci d'avance.

    formulaire_insertion.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
    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
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    <form method="post" action="insertion.php">
    <p />
    <br />
    <fieldset>
    <legend> &nbsp; Annoncer un &eacute;v&egrave;nement &nbsp; </legend>
    
    <?php
    // début de la première requête sur le type d'évènement
    echo '<label>'.'Type d&rsquo; &eacute;v&egrave;nement'.'</label>';
    echo '<select name="evenement2" class="ev" tabindex="1">';		// onfocus="this.className='textarea_focus';" onblur="this.className='';">';
    
    // connexion à la base déjà connecté ?
    // require("configuration.php");
    // $sql = connect_sql();
    
    $affich_form = "SELECT * FROM type_ev" ;
    $resultat = mysql_query($affich_form) or die ('Erreur : '.mysql_error() );
    $total = mysql_num_rows($resultat);
    //On vérifie que la table contient quelque chose
    if
    (mysql_num_rows($resultat) == 0)
    {
    echo '<option>Aucun</option>';
    } // fin si rien dans la liste de type d'évènement
    else
    {
    while ( $list = mysql_fetch_array( $resultat ) )
    {
    echo '<option value="'.$list['Type_evenement'].'">'.$list['Type_evenement'].'</option>';
    } // fin du while
    } // fin du else
    echo'</select>';
    
    // fin de la première requête sur le type d'évènement
    
    echo '<br />';
    
    // début de la deuxième requête sur le type d'établissement
    echo '<label>'.'Type d&rsquo; &eacute;tablissement'.'</label>';
    echo '<select name="lieu2" class="ev" tabindex="2">';		// onfocus="this.className='textarea_focus';" onblur="this.className='';">';
    
    $affich_form2 = "SELECT * FROM type_etab" ;
    $resultat2 = mysql_query($affich_form2) or die ('Erreur : '.mysql_error() );
    $total2 = mysql_num_rows($resultat2);
    //On vérifie que la table contient quelque chose
    if
    (mysql_num_rows($resultat2) == 0)
    {
    echo '<option>Aucun</option>';
    } // fin si rien dans la liste de type d'évènement
    else
    {
    while ( $list2 = mysql_fetch_array( $resultat2 ) )
    {
    echo '<option value="'.$list2['type_etablissement'].'">'.$list2['type_etablissement'].'</option>';
    } // fin du while
    } // fin du else
    echo'</select>';
    
    // fin de la première deuxième requête sur le type d'établissement
    
    echo '<br />';
    
    // début de la troisième requête sur le secteur
    echo '<label>'.'Secteur'.'</label>';
    echo '<select name="secteur" class="ev" tabindex="3">';	// onfocus="this.className='textarea_focus';" onblur="this.className='';">';
    $affich_form3 = "SELECT * FROM secteur" ;
    $resultat3 = mysql_query($affich_form3) or die ('Erreur : '.mysql_error() );
    $total3 = mysql_num_rows($resultat3);
    //On vérifie que la table contient quelque chose
    if
    (mysql_num_rows($resultat3) == 0)
    {
    echo '<option>Aucun</option>';
    } // fin si rien dans la liste
    else
    {
    while ( $list3 = mysql_fetch_array( $resultat3 ) )
    {
    echo '<option value="'.$list3['secteur_geographique'].'">'.$list3['secteur_geographique'].'</option>';
    } // fin du while
    } // fin du else
    echo '</select>';
    // fin de la troisième  requête sur le secteur
    
    echo '<br />';
    
    // début de la quatrième requête sur les jours
    echo '<label>'.'Du :'.'</label>';
    echo '<select name="jour" class="jj" tabindex="4">';			// onfocus="this.className='textarea_focus';" onblur="this.className='';">';
    $affich_form4 = "SELECT * FROM jours" ;
    $resultat4 = mysql_query($affich_form4) or die ('Erreur : '.mysql_error() );
    $total4 = mysql_num_rows($resultat4);
    //On vérifie que la table contient quelque chose
    if
    (mysql_num_rows($resultat4) == 0)
    {
    echo '<option>Aucun</option>';
    } // fin si rien dans la liste
    else
    {
    while ( $list4 = mysql_fetch_array( $resultat4 ) )
    {
    echo '<option value="'.$list4['jour'].'">'.$list4['jour'].'</option>';
    } // fin du while
    } // fin du else
    echo '</select>';
    // fin de la quatrième requête sur les jours
    
    // début de la cinquième requête sur les mois
    echo '<label>'.'</label>';
    echo '<select name="mois" class="mm" tabindex="5">';		// onfocus="this.className='textarea_focus';" onblur="this.className='';">';
    $affich_form5 = "SELECT * FROM mois" ;
    $resultat5 = mysql_query($affich_form5) or die ('Erreur : '.mysql_error() );
    $total5 = mysql_num_rows($resultat5);
    //On vérifie que la table contient quelque chose
    if
    (mysql_num_rows($resultat5) == 0)
    {
    echo '<option>Aucun</option>';
    } // fin si rien dans la liste
    else
    {
    while ( $list5 = mysql_fetch_array( $resultat5 ) )
    {
    echo '<option value="'.$list5['Nb'].'">'.$list5['mois'].'</option>';
    } // fin du while
    } // fin du else
    echo '</select>';
    // fin de la cinquième requête sur les mois
    
    echo '<br />';
    echo '<br />';
    ?>
    
    <label for="ev6">Tarif :</label>
    <select id="idSelect" name="tarif" tabindex="6" 
    onfocus="this.className='textarea_focus';" onchange="showT();" onblur="this.className='';valide(this, 'err_nom');" class="ev">
    <option value="Gratuit"> Gratuit </option>
    <option value="Payant"> Payant </option>
    </select>
    <input type="text" id="idInput" tabindex="7" name="montant" style="display:none;"  onfocus="this.className='textarea_focus';" onblur="this.className='';valide(this, 'err_nom');" class="ev" /> <span id="err_nom" style="color:red"></span>
    <span id="err_nom" style="color:red"></span>
    
    <br />
    <br />
    <label for="ev7">Nom du lieu :</label> <input type="text" tabindex="8" name="lieu3" onfocus="this.className='textarea_focus';" onblur="this.className='';valide(this, 'err_nom');" class="ev" /><span id="err_nom" style="color:red"></span>
    <br />
    <br />
    <label for="ev8">Heure de d&eacute;but</label> <input type="text" tabindex="9" name="debut" onfocus="this.className='textarea_focus';" onblur="this.className='';valide(this, 'err_nom');" class="ev" /><span id="err_nom" style="color:red"></span>
    <br />
    <br />
    <label for="ev9">Nom :</label> <input type="text" name="nom4" tabindex="10" onfocus="this.className='textarea_focus';" onblur="this.className='';valide(this, 'err_nom');" class="ev" /><span id="err_nom" style="color:red"></span>
    <br />
    <br />
    
    <label for="coment">Description </label>
    <textarea name="comments" tabindex="11" onfocus="this.className='textarea_focus';" onblur="this.className='';valide(this, 'err_nom');"></textarea>
    
    
    </fieldset>
    
    <br />
    <br />
    
    <p>
    <input type="submit" tabindex="12" value="Envoyer" />
    <input type="reset" tabindex="13" value="Tout effacer" />
    </p>
    
    </form>

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Validation Formulaire avec choix cellule
    Par jfk15 dans le forum Macros et VBA Excel
    Réponses: 16
    Dernier message: 04/06/2015, 22h45
  2. [AC-2003] Filtrer un sous-formulaire avec choix fait dans le formulaire
    Par prissou91 dans le forum IHM
    Réponses: 2
    Dernier message: 24/03/2014, 14h59
  3. [WD-2007] un formulaire avec choix des insertions(image, paragraphe etc)
    Par scsi3 dans le forum VBA Word
    Réponses: 18
    Dernier message: 09/05/2012, 13h16
  4. formulaire avec choix liste déroulante
    Par christophe_s46 dans le forum Général JavaScript
    Réponses: 10
    Dernier message: 15/05/2009, 21h07
  5. formulaire avec une liste a choix multiples
    Par pogy dans le forum Langage
    Réponses: 22
    Dernier message: 03/05/2006, 00h12

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