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 :

[PostGreSQL] Charger une liste en fonction de la precedente


Sujet :

PHP & Base de données

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    51
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 51
    Points : 19
    Points
    19
    Par défaut [PostGreSQL] Charger une liste en fonction de la precedente
    salut,
    je ne sais pas si le titre est adhéquate...
    je voudrais prendre la valeur choisie selon une liste qui incrémenterai la liste suivante avec les produits la concernant, que doit je faire et comment dois-je le faire ?
    j'ai été voir là : http://www.developpez.net/forums/sho...d.php?t=283089, mais je ne comprends pas grand chose... pourtant j'ai essayé...

  2. #2
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    51
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 51
    Points : 19
    Points
    19
    Par défaut
    il faut que tu fasse un formulaire qui s'appel lui meme a chaques fois !
    comment ça ? qu'il s'actualise automatiquement ?

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    572
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Haute Vienne (Limousin)

    Informations forums :
    Inscription : Juin 2005
    Messages : 572
    Points : 716
    Points
    716
    Par défaut
    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
     
    <select name="select1" onChange="monformulaire.submit();">
       <option value="toto">toto</toto>
    </select>
     
    <?php
    if(isset($_POST['select1']))
    {
    ?>
     
    <select name="select2">
    ....
     
    <?php
    }
    ?>
    Le principe est la (du moins celui que j'utilise fréquemment)
    Tout pas mieux que tout le monde : évitez les questions techniques en mp sinon à quoi bon poster sur un forum ?

    Petite citation : "Le sage cherche la vérité, l'imbécile l'a déjà trouvée"

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    51
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 51
    Points : 19
    Points
    19
    Par défaut
    ok merci je vais essayer.

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    51
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 51
    Points : 19
    Points
    19
    Par défaut
    ça marche pas encore tout à fait... mais je lutte et je vous tiens au courant...

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    51
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 51
    Points : 19
    Points
    19
    Par défaut
    non, ça marche pas, je pense que c'est tout bête en plus...

  7. #7
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    572
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Haute Vienne (Limousin)

    Informations forums :
    Inscription : Juin 2005
    Messages : 572
    Points : 716
    Points
    716
    Par défaut
    Je crois que le plus simple c'est que tu nous montres ton bout de code et on pourra alors te dire si on voit pourquoi ca ne fonctionne pas
    Tout pas mieux que tout le monde : évitez les questions techniques en mp sinon à quoi bon poster sur un forum ?

    Petite citation : "Le sage cherche la vérité, l'imbécile l'a déjà trouvée"

  8. #8
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    51
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 51
    Points : 19
    Points
    19
    Par défaut
    donc là c'est la première liste (qui fonctionne)
    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
    <?php
    	// On se connecte sur Postgresql et sur la base de données
    	$sql = new sql();
     
    	$sql->s_server("localhost");
    	$sql->s_login("postgres");
    	$sql->s_base("nana");
    	$sql->s_password("nono");
    	if( ! $sql->connecte())
    	{
    		echo "Erreur de connexion à la base. \n";
    		exit;
    	}else
    	{
    		echo '<SELECT NAME="marque" onChange="Ajout_Produit.submit();"><option value=""></option>';
    		$reql = new record($sql);
    		$reql = pg_query("SELECT nommarque FROM marque ORDER BY nommarque");
    		while ($nommarque=pg_fetch_object($reql))
    		{
    			echo "<option>".$nommarque->nommarque."</option>";
    		}
    		echo '</SELECT>';
    	}
    ?>
    mais quand je choisie la marque, le formulaire ne se rapelle pas.
    là c'est la suite :
    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
    <?php
    if(isset($_POST['marque']))
    {?><tr >
    	<td><font style="color:#4080c0">C</font><font style="color:#468ac6">h</font><font style="color:#4d93cd">o</font><font style="color:#539dd3">i</font><font style="color:#5aa6d9">x</font><font style="color:#60b0e0">&nbsp; </font><font style="color:#66bae6">d</font><font style="color:#6dc3ec">e</font><font style="color:#73cdf2">&nbsp; </font><font style="color:#7ad6f9">l</font><font style="color:#80e0ff">a </font><font style="color:#7ad6f9">f</font><font style="color:#73cdf2">a</font><font style="color:#6dc3ec">m</font><font style="color:#66bae6">i</font><font style="color:#60b0e0">l</font><font style="color:#5aa6d9">l</font><font style="color:#539dd3">e</font><font style="color:#4d93cd">&nbsp; </font><font style="color:#468ac6">:</font><font color="#FF0000">*</font>
    	</td>
    	<td>
    <?php 		echo '<select name="produit"><option value=""></option>';
    		$reql = new record($sql);
    		$reql = pg_query("SELECT nomprod FROM produit, marque WHERE produit.nummarque = marque.nummarque AND nommarque = $marque ORDER BY nomprod");
    		while ($nomprod=pg_fetch_object($reql))
    		{
    			echo "<option>".$nomprod->nomprod."</option>";
    		}
    		echo '</SELECT>';
    }
    ?>
    	</td>
    	</tr>
    voilà... merci de m'aider

  9. #9
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    572
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Haute Vienne (Limousin)

    Informations forums :
    Inscription : Juin 2005
    Messages : 572
    Points : 716
    Points
    716
    Par défaut
    Ton formulaire s'appelle bien Ajout_produit et encadre bien les deux select ?

    Petite remarque de rien du tout perso je testerais si $_POST['marque'] existe ET n'est pas vide sinon tu pourrais avoir des mauvaises surprises
    Tout pas mieux que tout le monde : évitez les questions techniques en mp sinon à quoi bon poster sur un forum ?

    Petite citation : "Le sage cherche la vérité, l'imbécile l'a déjà trouvée"

  10. #10
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2007
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2007
    Messages : 10
    Points : 10
    Points
    10
    Par défaut Urgent!
    Bonjour,
    J'ai le meme probleme et j'arrive pas a le resoudre je deprime mais moi c'est une combobox pays et quand je clique sur le pays la combobox des villes de ce pays doit apparaitre mais rien ne marche
    Merci de m'aider pleaaase...

  11. #11
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    51
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 51
    Points : 19
    Points
    19
    Par défaut
    il s'appelle produit_form c'est ma page qui s'appelle Ajout_Produit.php et j'ai changé mais ça marche toujours pas.
    j'ai placé un avant le deuxième select...

  12. #12
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    572
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Haute Vienne (Limousin)

    Informations forums :
    Inscription : Juin 2005
    Messages : 572
    Points : 716
    Points
    716
    Par défaut
    Pourrais tu donner le code du formulaire dans son intégralité ?

    Le code php semble bon à mon avis c'est un problème de "postage" de données (désolé pour le neologisme )
    Tout pas mieux que tout le monde : évitez les questions techniques en mp sinon à quoi bon poster sur un forum ?

    Petite citation : "Le sage cherche la vérité, l'imbécile l'a déjà trouvée"

  13. #13
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    51
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 51
    Points : 19
    Points
    19
    Par défaut
    pas de problème
    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
    <?php
    require_once ("classes/sql.pg.class.php");
    require_once ("classes/record.pg.class.php");
    ?>
    <form method='post' action='FinInsertProd.php' name='produit_form' enctype="multipart/form-data" >
    <br><br><h2>Insertion du produit </h2>
    <br><br>	
    	<input type="hidden" name="MAX_FILE_SIZE" value="500000" />
    	<table border="0">
    	<tr>
    	<td>Nom du produit<font color="#FF0000">*</font>
    	</td>
    	<td><input type="text" name="nomproduit" size="33">
    	</td></tr><tr><td>&nbsp;</td><td>&nbsp;</td>
    	</tr><tr >
    	<td>Choix de l'image<font color="#FF0000">*</font>
    	</td>
    	<td><input type="file" name="image">
    	</td>
    	</tr><tr><td>&nbsp;</td><td>&nbsp;</td>
    	</tr><tr >
    	<td>Choix de la marque<font color="#FF0000">*</font>
    	</td>
    	<td><?php
    	// On se connecte sur Postgresql et sur la base de données
    	$sql = new sql();
     
    	$sql->s_server("localhost");
    	$sql->s_login("postgres");
    	$sql->s_base("truc");
    	$sql->s_password("machin");
    	if( ! $sql->connecte())
    	{
    		echo "Erreur de connexion à la base. \n";
    		exit;
    	}else
    	{
    		echo '<SELECT NAME="marque" onChange="produit_form.php.submit();"><option value=""></option>';
    		$reql = new record($sql);
    		$reql = pg_query("SELECT nommarque FROM marque ORDER BY nommarque");
    		while ($nommarque=pg_fetch_object($reql))
    		{
    			echo "<option>".$nommarque->nommarque."</option>";
    		}
    		echo '</SELECT>';
    	}
    ?>
    	</td>
    	</tr><tr><td>&nbsp;</td><td>&nbsp;</td><?php
    if(isset($_POST['marque']))
    {?><tr >
    	<td>Choix de la famille<font color="#FF0000">*</font>
    	</td>
    	<td>
    <?php 	echo $_POST['marque'];
    		echo '<select name="produit"><option value=""></option>';
    		$reql = new record($sql);
    		$reql = pg_query("SELECT nomprod FROM produit, marque WHERE produit.nummarque = marque.nummarque AND nommarque = $marque ORDER BY nomprod");
    		while ($nomprod=pg_fetch_object($reql))
    		{
    			echo "<option>".$nomprod->nomprod."</option>";
    		}
    		echo '</SELECT>';
    }
    ?>
    	</td>
    	</tr><tr><td>&nbsp;</td><td>&nbsp;</td>
    	</tr><tr><td colspan="2" align="center"><br><br><input type="button" onClick="validation(this.form)" name="produit" value="Insérer"><br></td></tr>
    	</table>
    </form>

  14. #14
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    51
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 51
    Points : 19
    Points
    19
    Par défaut
    oups !
    je viens de relire comme ça, c'est pas la bonne requête
    attend je la refais... (j'ai mélangé deux formulaire )

  15. #15
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    572
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Haute Vienne (Limousin)

    Informations forums :
    Inscription : Juin 2005
    Messages : 572
    Points : 716
    Points
    716
    Par défaut
    EDIT : j'ai rien dit puisque ce n'était pas la bonne requete
    Tout pas mieux que tout le monde : évitez les questions techniques en mp sinon à quoi bon poster sur un forum ?

    Petite citation : "Le sage cherche la vérité, l'imbécile l'a déjà trouvée"

  16. #16
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    51
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 51
    Points : 19
    Points
    19
    Par défaut
    ok

  17. #17
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    572
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Haute Vienne (Limousin)

    Informations forums :
    Inscription : Juin 2005
    Messages : 572
    Points : 716
    Points
    716
    Par défaut
    Désolé je n'ai pas compris si finalement le code est bon ou non donc je répète ce que je disais au cas ou tu aies déjà modifié quand j'ai jeté un oeil.

    Tu disais que ta page s'appelait ajout_produit.php et je vois que ton formulaire pointe sur FinInsertProd.php. Si tu veux que ta page se rafraichisse il faut que le formulaire pointe sur elle meme.

    Si vraiment tu veux qu'au traitement final une autre page soit appelé dans ce cas joue sur le form.target qui modifiera la page d'envoi du formulaire (en javascript).
    Tout pas mieux que tout le monde : évitez les questions techniques en mp sinon à quoi bon poster sur un forum ?

    Petite citation : "Le sage cherche la vérité, l'imbécile l'a déjà trouvée"

  18. #18
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    51
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 51
    Points : 19
    Points
    19
    Par défaut
    Citation Envoyé par ratapapa
    Tu disais que ta page s'appelait ajout_produit.php et je vois que ton formulaire pointe sur FinInsertProd.php. Si tu veux que ta page se rafraichisse il faut que le formulaire pointe sur elle meme.
    oui merci, j'ai changé ça, et ça marche bien pour la deuxième liste

    Citation Envoyé par ratapapa
    Si vraiment tu veux qu'au traitement final une autre page soit appelé dans ce cas joue sur le form.target qui modifiera la page d'envoi du formulaire (en javascript).
    je voudrai ça en effet, mais je ne vois pas comment faire ça... ou je comprend pas...
    en plus j'ai un problème de table en fait...

  19. #19
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    572
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Haute Vienne (Limousin)

    Informations forums :
    Inscription : Juin 2005
    Messages : 572
    Points : 716
    Points
    716
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
     
    echo '<SELECT NAME="marque" onChange="produit_form.target=\'ajout_produit.php\';produit_form.submit();"><option value=""></option>';
    Tout pas mieux que tout le monde : évitez les questions techniques en mp sinon à quoi bon poster sur un forum ?

    Petite citation : "Le sage cherche la vérité, l'imbécile l'a déjà trouvée"

  20. #20
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    51
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 51
    Points : 19
    Points
    19
    Par défaut
    merci beaucoup, quand j'aurai trouvé comment faire avec mes deux tables, je vais voir si ça marche, je te tiens au courant...
    (à moins que tu sais comment faire... ?)

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. Charger une liste déroulante en fonction d'un champ
    Par vinystic dans le forum Paradox
    Réponses: 3
    Dernier message: 06/03/2013, 14h46
  2. Charger une liste de mots
    Par barth69 dans le forum C++Builder
    Réponses: 13
    Dernier message: 08/04/2006, 20h56
  3. Réponses: 7
    Dernier message: 28/02/2006, 16h46
  4. Réponses: 4
    Dernier message: 14/10/2003, 08h58

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