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 :

listes deroulantes multiple et action [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Avril 2012
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Avril 2012
    Messages : 12
    Points : 6
    Points
    6
    Par défaut listes deroulantes multiple et action
    Bonjour,
    je réalise un ptit site pour un ami, mais je suis vraiment un newbie en programmation php et il y a vraiment un endroit ou je coince...

    j aimerai faire trois listes deroulantes avec un résultat au bout en fonction des choix.
    je m explique, il veut créer un petit réseau de covoiturage autour de lui, et ça serait du style :

    ville de départ : liste deroulante
    ville d arrivée : liste deroulante
    Nombre de personne : liste deroulante
    prix (partage des frais): résultat

    le partage des frais serait fixé à l avance par rapport aux destinations qu il fait souvent

    Voici ce que j ai essayé de faire:

    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
    <?php
     
    $vd='Choississez une ville de depart';
    $va='Choississez une ville d\'arrivee';
    $v1='paris';
    $v2='montpellier';
     
     
    ?>
     
    <html>
        <head><title>Ma page d'accueil</title></head>
        <body>
     
            <form name="trajet" method="post" action="index.php">
                Entrez votre ville de depart :
     
    <SELECT name="ville1" size="1">
    <OPTION><?php echo $vd; ?>	
    <OPTION><?php echo $v1; ?>
    <OPTION><?php echo $v2; ?>
    </SELECT>
    <br/></p>
     
     
                Entrez votre ville d'arrivée: 
    <SELECT name="ville2" size="1">
    <OPTION><?php echo $va; ?>
    <OPTION><?php echo $v1; ?>
    <OPTION><?php echo $v2; ?>
    </SELECT>
    <br/></p>
     
    			 Entrez le nombre de personnes : 
    <SELECT name="ville3" size="1">
    <OPTION>1
    <OPTION>2
    <OPTION>3
    <OPTION>4
     
    </SELECT>
    <br/></p>
     
                <input type="submit" name="valider" value="ok"/>
            </form>
    ET ici je ne sais pas si il est possible de lier le "resultat" de ville 1 a du php (jarrive pas a faire le lien !!)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
      <?php    
    	if ([ville1]==$v1) {
    	echo '30 euros';
    }
    else {
    echo non;
    }
    ?>
    si quelqu'un pouvait me donner une piste a suivre ca ne serait pas de refut...

  2. #2
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Points : 15 059
    Points
    15 059
    Par défaut
    Bonjour,

    Regarde ce tutoriel.

    A+.

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Avril 2012
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Avril 2012
    Messages : 12
    Points : 6
    Points
    6
    Par défaut solution
    Citation Envoyé par andry.aime Voir le message
    Bonjour,

    Regarde ce tutoriel.

    A+.
    Mdr c'est avec ce tuto que j ai commencé à faire mon code...mais à force d'essai et de modif je ne voyais pas ce qui été devant mes yeux !!!

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    if(isset($_POST['valider'])){
    $ville1=$_POST['ville1'];
    $ville2=$_POST['ville2'];
    $nombre=$_POST['nombre'];
    Un grand merci à toi !!!!

    Je suppose qu il y a 1000 et une façon de faire ça plus simplement surtout pour des grandes listes, mais voici donc la solution pour ceux que ça intéresse :
    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
     
    <?php
    $vd='Choississez une ville de depart';
    $va='Choississez une ville d\'arrivee';
    $v1='paris';
    $v2='montpellier';
    $n1=1;
    $n2=2;
     
    ?>
     
     
            <form name="inscription" method="post" action="bob.php">
                Entrez votre ville de depart :
    <SELECT name="ville1" size="1">
    <OPTION><?php echo $vd; ?>	
    <OPTION><?php echo $v1; ?>
    <OPTION><?php echo $v2; ?>
    </SELECT>
    <br/></p>
     
     
                Entrez votre ville d'arrivée: 
    <SELECT name="ville2" size="1">
    <OPTION><?php echo $va; ?>
    <OPTION><?php echo $v1; ?>
    <OPTION><?php echo $v2; ?>
    </SELECT>
    <br/></p>
     
    			 Entrez le nombre de personnes : 
    <SELECT name="nombre" size="1">
    <OPTION>1
    <OPTION>2
    <OPTION>3
    <OPTION>4
     
    </SELECT>
    <br/></p>
     
                <input type="submit" name="valider" value="ok"/>
            </form>
     
    <?php
    if(isset($_POST['valider'])){
        $ville1=$_POST['ville1'];
        $ville2=$_POST['ville2'];
    	$nombre=$_POST['nombre'];
    }
    ?>		
     
        <?php    
    	if ($ville1==$ville2)
    	{
    	echo 'Choississez une ville de départ';
    }
     
     
    else if(($ville1==$v1 || $ville1==$v2) && ($ville2==$v2 || $ville2==$v1) && $nombre==$n1) {
     echo '300 euros';
    }
     
    else if(($ville1==$v1 || $ville1==$v2) && ($ville2==$v2 || $ville2==$v1) && $nombre==$n2) {
     echo '100 euros / personne';
    }
     
    else // ville manquante
    echo 'il manque un renseignement !'; 
     
     
     
     
    ?>
    <p>
    	1000 merci reste plus que le code a remplir avec toutes mes villes !!!!
    </p>
    Dernière question pour laquelle je vais essayer de trouver une solution mais je ne sais pas si c'est possible ?

    Lorsque l'internaute valide son choix, est ce que les listes déroulantes peuvent rester figées sur son dernier choix ?car actuellement lorsque l on choisi par exemple:

    ville1: Montpellier
    Ville2: Paris
    et que l on valide les choix reviennent sur

    ville1: Choisissez une ville
    ville2: Choisissez une ville
    alors que moi j'aimerais que ça reste sur le dernier choix, ici

    ville1: Montpellier
    Ville2: Paris

    En attente de piste ou que je trouve une solution,
    cordialement

  4. #4
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Points : 15 059
    Points
    15 059

  5. #5
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Avril 2012
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Avril 2012
    Messages : 12
    Points : 6
    Points
    6
    Par défaut ok
    cool, merci, j ai réussi !!

    j ai passé la variable post en get et c'est nickel

    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
     
     
    <?php
    $vd='Choississez une ville';
    $va='Choississez une ville';
     
    $n1=1;
     
    etc.....;
     
    ?>
    	<form name="prenom" method="get" action="final_trajet.php">
    Ville de départ	:<br/>    
    <?php 
        $selected = isset( $_GET['ville1'] ) ? $_GET['ville1'] : "" ;
        $selectedValue = 'selected="selected"';
    ?>	
    <SELECT name="ville1" size="1">
     
    <optgroup label="-----">	
            <option value=<?php echo $vd; ?> <?php if( $selected == $vd ) echo $selectedValue ?>><?php echo $vd; ?></option>
    </optgroup>	
    <optgroup label="-----">	
    		<option value=<?php echo $v1; ?> <?php if( $selected == $v1 ) echo $selectedValue ?>><?php echo $v1; ?></option>
    		<option value=<?php echo $v2; ?> <?php if( $selected == $v2 ) echo $selectedValue ?>><?php echo $v2; ?></option>
    		<option value=<?php echo $v3; ?> <?php if( $selected == $v3 ) echo $selectedValue ?>><?php echo $v3; ?></option>
    		<option value=<?php echo $v4; ?> <?php if( $selected == $v4 ) echo $selectedValue ?>><?php echo $v4; ?></option>
    		<option value=<?php echo $v5; ?> <?php if( $selected == $v5 ) echo $selectedValue ?>><?php echo $v5; ?></option>
    		<option value=<?php echo $v6; ?> <?php if( $selected == $v6 ) echo $selectedValue ?>><?php echo $v6; ?></option>
    </optgroup>		
     
     
    	</SELECT>
    	<br/><br/>
     
    etc....
     
    <br/><br/>
     
     
    <input type="submit" name="valider" value="ok"/>		
     
            </form>
     
    <?php
    if(isset($_GET['valider'])){
        $ville1=$_GET['ville1'];
        $ville2=$_GET['ville2'];
    	$nombre=$_GET['nombre'];
    }
    ?>		
     
    etc....(mes conditions if.....)
     
    ?>
    J attends un peu pour passer en "resolu" au cas ou une question me vienne et je donnerais l exemple simplifié du code au cas ou ça intéresse qq1 !

    Merci pour tes réponses rapides je pensais pas que ça irait aussi vite !!!

  6. #6
    Membre expert
    Avatar de ericd69
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2011
    Messages
    1 919
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2011
    Messages : 1 919
    Points : 3 295
    Points
    3 295
    Billets dans le blog
    1
    Par défaut
    salut,

    tu as les sessions aussi pour maintenir un certain nombre d'informations entre 1 ou plusieurs pages...
    soyons pensez à mettre quand votre problème est résolu ou à utiliser pour les réponses pertinentes...
    ne posez pas de problématique soi-disant simplifiée sur des problèmes que vous n'êtes pas capable de résoudre par respect pour ceux qui planchent dessus... sinon: et à utiliser pour insérer votre code...

  7. #7
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Avril 2012
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Avril 2012
    Messages : 12
    Points : 6
    Points
    6
    Par défaut ;)
    Citation Envoyé par ericd69 Voir le message
    salut,

    tu as les sessions aussi pour maintenir un certain nombre d'informations entre 1 ou plusieurs pages...
    Merci pour cette info ! j ai lu le tuto , mais je ne vais pas me lancer a fond dedans tout de suite car j arrive a faire ce que je veux et assez rapidement avec les get, et if etc... !
    j attends que mon pote me donne les dernières info pour que je puisse voir si j ai encore besoin de votre précieuse aide !!

    Néanmoins, pour enrichir ma culture de faible programmateur (pour l instant ... ) et celle d autres newbies :

    si j ai bien compris les sessions, vu que j ai 3 listes déroulantes à garder en mémoire, je dois utiliser ça non ?

    Il est impossible d'ouvrir simultanément plusieurs sessions. Cependant, on peut tout à fait ouvrir plusieurs sessions l'une après l'autre. Dans ce cas, il faut fermer la première session sans la détruire, grâce à session_write_close(), puis assigner les nouveaux session_name et session_id, et enfin ouvrir la nouvelle session avec session_start().
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    <?php
    session_name('utilisateur');
    session_start(); // Création de la première session
    [...] // Utilisation de la première session
    session_write_close(); // Fermeture de la première session, ses données sont sauvegardées.
    session_name('admin'); // Indication du nom de la seconde session
    session_start(); // Ouverture de la seconde session
    [...] // Utilisation de la seconde session.
    ?>
    ou est ce que ma session représente tout mes choix sur la page jusqu a la validation ?

  8. #8
    Membre expert
    Avatar de ericd69
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2011
    Messages
    1 919
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2011
    Messages : 1 919
    Points : 3 295
    Points
    3 295
    Billets dans le blog
    1
    Par défaut
    pourquoi avoir besoin de plusieurs sessions dans ton cas?

    qu'est ce qui t’empêche de stocker tes infos sur tes 3 listes dans la même?
    soyons pensez à mettre quand votre problème est résolu ou à utiliser pour les réponses pertinentes...
    ne posez pas de problématique soi-disant simplifiée sur des problèmes que vous n'êtes pas capable de résoudre par respect pour ceux qui planchent dessus... sinon: et à utiliser pour insérer votre code...

  9. #9
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Avril 2012
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Avril 2012
    Messages : 12
    Points : 6
    Points
    6
    Par défaut
    Citation Envoyé par ericd69 Voir le message
    pourquoi avoir besoin de plusieurs sessions dans ton cas?

    qu'est ce qui t’empêche de stocker tes infos sur tes 3 listes dans la même?
    ok j ai vu une seule session aurait pu etre nécessaire !
    bon ,
    je suis resté sur mon premier formulaire avec me conditions if !
    Un grand merci a vous !

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

Discussions similaires

  1. [XL-2010] listes deroulantes multiples
    Par wazzup51 dans le forum Excel
    Réponses: 3
    Dernier message: 20/03/2012, 23h08
  2. Listes deroulantes multiples comme Filtres
    Par Shades dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 13/01/2012, 17h24
  3. liste deroulante multiple avec size=1
    Par Mickael Scofild dans le forum Balisage (X)HTML et validation W3C
    Réponses: 1
    Dernier message: 26/08/2007, 23h49
  4. garder en memoire les champs d'une liste deroulante multiple
    Par eclipse012 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 26/01/2007, 10h55
  5. Connaitre le nombre de selections dans une liste deroulante multiple
    Par ikeaboy dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 08/08/2006, 08h50

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