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 :

Renseigner une liste déroulante dans un formulaire en faisant une jointure.


Sujet :

PHP & Base de données

  1. #1
    Membre régulier Avatar de bilou95
    Inscrit en
    Septembre 2006
    Messages
    433
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 433
    Points : 117
    Points
    117
    Par défaut Renseigner une liste déroulante dans un formulaire en faisant une jointure.
    Bonjour a vous,

    Je voudrais via une jointure renseigner une liste déroulante d'un formulaire ... mais je n'y parviens pas .. la liste déroulante ressort vide mais aucun message d'erreur ...

    Autre chose Est il possible de renseigner un champ d'une table par 0 ou 1 lorsque l'on sélectionne un choix 'Bouton radio' OUI ou NON ... (Oui pour 1 et NON pour 0)

    Merci

    Voici le code qui ne fonctionne pas ..
    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
    <?
    require("cnx/login_sql.php");
     
    //Connexion à la base
    $db = mysql_connect('localhost', 'root', '') or die ("Erreur de connexion");
     
    //Selection de la base
    mysql_select_db('alliance',$db);
     
    @$id=$_GET['id'];
     
    $date = date("y/m/d G.i:s", time());
     
    $empr="SELECT s.id_spare,p.idspare_pr FROM spare s LEFT JOIN pr_spare p ON s.id_spare=p.idspare_pr WHERE p.idspare_pr='$id'";
     
    $data=mysql_query($empr) or die ('Erreur SQL !');
     
    //Formulaire d'ajout.
     
    echo '<form name="formpret" method="POST" Action="?numlien=pret">
    
    			<br><center><table border="0" cellpadding="1" cellspacing="1">
    				<tr bgcolor="#336699">
    					<td height="25"colspan="2" align="center"><strong>
    					<font color="#FFFFFF" size="2">Pret Pc Portable</font></strong></td>
    				</tr>
    				
    				<tr>
    				
    					<td bgcolor="E8E8E8">Spare a préter</td>';
     
    					echo '<td bgcolor="F4F4F4"><SELECT name="nom_sp">';
    						while($datalst(mysql_num_rows($data)))
    						{ 
    					 	  echo '<option value="'.$datalst['id_spare'].'">'.$datalst['nom_spare'].'</option>';
    						  } 
    						   echo '</td>
    				</tr>
    				<tr>
    					<td bgcolor="E8E8E8">Nom de l\'emprunteur ?</td>
    					<td bgcolor="F4F4F4"><input type="text" name="emprunteur" value="'.@$_POST['emprunteur'].'"></td>
    				</tr>
    				<tr>
    					<td bgcolor="E8E8E8">Date du jour (auto)</td>
    					<td bgcolor="F4F4F4"><TEXTAREA name="date" onfocus="document.forms.f.dmc.blur()" value="'.$date['datejour'].'"></td>
    				</tr>
    				<tr>
    					<td bgcolor="E8E8E8">Nbres Jours / Mois</td>
    					<td bgcolor="F4F4F4"><input type="text" name="jourmois" value="'.@$_POST['nbrejourmois'].'"></td>
    				</tr>
    				<tr>
    					<td bgcolor="E8E8E8">Validation emprunt</td>
    					<td bgcolor="F4F4F4">Oui : <input type="radio" name="choix" value="'.@$_POST['oui'].'"><br>
    					non : <input type="radio" name="choix" value="'.@$_POST['non'].'"></td>
    				</tr>
    				<tr align="center" bgcolor="D6D6D6">
            				<td colspan="2"><strong><font size="1"></font>
               				<input type="Submit" value="Valider"></strong>
    					</td>
          				</tr>
    				</table><br></center></form>';
     
    //Fermeture de la connexion
    mysql_close();
    ?>

  2. #2
    Membre éprouvé
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    774
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : Canada

    Informations forums :
    Inscription : Juillet 2005
    Messages : 774
    Points : 936
    Points
    936
    Par défaut
    Citation Envoyé par bilou95
    Je voudrais via une jointure renseigner une liste déroulante d'un formulaire ... mais je n'y parviens pas .. la liste déroulante ressort vide mais aucun message d'erreur ...
    comment veux tu etre aidé quand on sait pas
    primo la structure de tes tables
    secundo ce que tu veux selectionner?
    Citation Envoyé par bilou95
    Autre chose Est il possible de renseigner un champ d'une table par 0 ou 1 lorsque l'on sélectionne un choix 'Bouton radio' OUI ou NON ... (Oui pour 1 et NON pour 0)
    c'est possible....reste a toi de l'implementer lors de l'insertion dans ta base

  3. #3
    Membre averti Avatar de nicoaix
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2004
    Messages
    571
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Service public

    Informations forums :
    Inscription : Décembre 2004
    Messages : 571
    Points : 362
    Points
    362
    Par défaut
    Avant d'inclure le résultat de la requête dans un menu déroulant as-tu vérifié que tu récupérais bien des données?

  4. #4
    Membre régulier Avatar de bilou95
    Inscrit en
    Septembre 2006
    Messages
    433
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 433
    Points : 117
    Points
    117
    Par défaut
    Avec mes excuses ! Voici mes 2 tables ...

    En fait, je viens de mettre en place un formulaire qui ajoute dans la table spare tout les pc portables que l'on met a disposition des utilisateurs en pret ... Désormais je voudrais mettre en place un formulaire (sorte de fiche de pret) dans lequel on pourra indiquer le nom du spare, son emprunteur, date du jour (automatiquement incrémentée via une variable), nombre de jours prété, et pour finir valider par 2 boutons radio (OUI/NON) pour que ces choix incrémente le champ 'emprunte' dans la table (pr_spare)

    Voyez vous ?

    D'avance merci.

    Table 'spare'
    id_spare
    nom_spare
    modele
    num_serie
    num_inv

    Table 'pr_spare'
    idspare_pr
    nomspare
    emprunte
    Datej datetime
    nbrejm
    emprunteur
    nom_tech

  5. #5
    Membre éprouvé
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    774
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : Canada

    Informations forums :
    Inscription : Juillet 2005
    Messages : 774
    Points : 936
    Points
    936
    Par défaut
    quelles sont les informations que tu voudrais extraire de tes deux tables?
    Perso, je vois pas l'interet de la jointure vu que la table pr_spare renferme déjà les infos que tu veux

  6. #6
    Membre régulier Avatar de bilou95
    Inscrit en
    Septembre 2006
    Messages
    433
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 433
    Points : 117
    Points
    117
    Par défaut
    non pr_spare ne détient aucune info ... c'est dans cette table que j'incrementerai les portables que nous prétons ...

    La table 'spare' detient toutes les infos sur mes portables.

    Comprends tu?

  7. #7
    Membre éprouvé
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    774
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : Canada

    Informations forums :
    Inscription : Juillet 2005
    Messages : 774
    Points : 936
    Points
    936
    Par défaut
    je viens de voir un truc dans ton code
    tu as oublié la balise fermante du select. corrige et on voit pour le reste

  8. #8
    Membre régulier Avatar de bilou95
    Inscrit en
    Septembre 2006
    Messages
    433
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 433
    Points : 117
    Points
    117
    Par défaut
    Non ca ne marche en fermant ma balise <SELECT>
    Merci.

  9. #9
    Membre éprouvé
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    774
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : Canada

    Informations forums :
    Inscription : Juillet 2005
    Messages : 774
    Points : 936
    Points
    936
    Par défaut
    quand tu fais juste un select sans jointure dans la table spare, ça marche? essai en faisant un select * sans la clause where

  10. #10
    Membre régulier Avatar de bilou95
    Inscrit en
    Septembre 2006
    Messages
    433
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 433
    Points : 117
    Points
    117
    Par défaut
    Je viens de tester ... Simplement un select dans la table sans jointure ... Rien y fait ... aucun message d'erreur et rien dans la liste ... Pourtant un enregistrement existe ... Peut etre la condition MYSQL_FETCH_ARRAY ????? qui ne convient pas !!!!

    Merci ....

Discussions similaires

  1. Réponses: 2
    Dernier message: 24/08/2011, 06h47
  2. Requête paramétrée depuis une liste déroulante dans un formulaire
    Par coyote06 dans le forum Requêtes et SQL.
    Réponses: 7
    Dernier message: 14/01/2010, 12h29
  3. [AC-2003] Filtrer une liste déroulante dans sous-formulaire
    Par Majeanne dans le forum IHM
    Réponses: 1
    Dernier message: 07/08/2009, 14h20
  4. Réponses: 6
    Dernier message: 23/09/2008, 15h57
  5. Réponses: 5
    Dernier message: 27/08/2006, 14h18

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