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 :

Aide pour afficher les infos


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    76
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2008
    Messages : 76
    Points : 45
    Points
    45
    Par défaut Aide pour afficher les infos
    Bonjour,
    j'essaie d'afficher des infos de la BD en utilisant la boucle FOR au lieu de WHILE.
    pour etre plus claire:
    avec While voila le resultat:




    moi j'aimerai avoir le même résultat en utilisant la balise Select comme montrée sur cette image:


    Le code :
    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
     
     
    <?
    include("connexion.php"); 
    $ouvre = mysql_connect($server, $login, $passw);
    mysql_select_db ($db);
    $sql1 = "SELECT * FROM auteur ORDER BY nom ASC ";
    $requet = mysql_query ($sql1);
    $compte = mysql_num_rows ($requet);
    mysql_close ($ouvre);
    ?>
    <html>
    <head>
    <title>essai1</title>
    </head>
    <body>
    <form id="form1" name="form1" method="get" action="affiche.php">
      <select name="select">
      <?
    for($i=0;$i<$compte;$i++){
    	echo mysql_result($requet,$i,'id'). "<br />";
     
    ?>
        <option value="<? echo mysql_result($requet,$i,'id')?>"><? echo mysql_result($requet,$i,'nom')?></option>
      <?
    	}
    	?>
      </select>
    	<input type="submit" name="Submit" value="afficher" />
     
    </form>
     
    </body>
    </html>
    ------------------------------------------------------------
    ------------------------------------------------------------


    le code du While et de Affiche (ces codes ce trouve dans le livre PHP5 de MicroApp):
    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
     
    <?
    $ouvre = mysql_connect("localhost","root","");
    mysql_select_db ("livres1");
    $requet = mysql_query ("SELECT * FROM auteur");
    ?>
    <html>
    <head>
    <title>Livre</title>
    </head>
    <body>
    <?
    echo "<table width=90% align=center border=1>";
    echo "<tr><td>ID</td><td>Nom</td><td>Prenom</td></tr>";
    	while ($eleve = mysql_fetch_array($requet)){
    	$id = $eleve['id'];
    	$nom = $eleve['nom'];
    	$prenom = $eleve['prenom'];
    	echo "<tr>";
    	echo "<td>$id</td>";
    	echo "<td>$nom</td>";
    	echo "<td>$prenom</td>";
    	echo "<td>";
    	echo "<a href='affiche.php?id=$id'>voir</a>";
    	echo "</td>";
    	echo "</tr>";
    	}	
    mysql_close ($ouvre);	
    echo "</table";
    ?>
    </body>
    </html>
    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
     
    <?
    $ouvre = mysql_connect("localhost","root","");
    mysql_select_db ("livres1");
    $requet = mysql_query ("SELECT * FROM auteur WHERE id = '".$_GET['id']."'");
    $eleve = mysql_fetch_array($requet);
    mysql_close ($ouvre);
    ?>
    <html>
    <head>
    <title>affiche</title>
    </head>
    <body>
    <table width="200" border="1">
      <tr>
        <td><? echo $eleve['id'] ?></td>
        <td><? echo $eleve['nom'] ?></td>
        <td><? echo $eleve['prenom'] ?></td>
      </tr>
    </table>
    </body>
    </html>
    Merci d'avance.

  2. #2
    Rédacteur
    Avatar de RideKick
    Homme Profil pro
    Directeur technique
    Inscrit en
    Septembre 2006
    Messages
    5 914
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Septembre 2006
    Messages : 5 914
    Points : 12 572
    Points
    12 572
    Par défaut
    Je peux te demander pourquoi tu veux passer par un FOR plutôt qu'un WHILE ? (effet escompte etc ...)
    Pas de questions techniques en MP please

    Mon site perso

    Mon profil Viadeo

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    76
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2008
    Messages : 76
    Points : 45
    Points
    45
    Par défaut
    Citation Envoyé par RideKick Voir le message
    Je peux te demander pourquoi tu veux passer par un FOR plutôt qu'un WHILE ? (effet escompte etc ...)
    je ne sais pas comment avoir un menu déroulant en utilisant la boucle While

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    107
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France, Bas Rhin (Alsace)

    Informations forums :
    Inscription : Décembre 2003
    Messages : 107
    Points : 51
    Points
    51
    Par défaut
    ben tu fais comme cela....

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    <?php
    		$requetecountry="SELECT * FROM ro_users_country ORDER BY users_country ASC";
    		$resultcountry=mysql_query($requetecountry);
    		?>
    		<select class="textlong" name="country">
    		<option value="">&nbsp;</option>
    		<?php while($resultatcountry=mysql_fetch_array($resultcountry)) { ?>
    		<option value="<?php echo $resultatcountry["id_users_country"]; ?>" <?php if ($resultatcountry["id_users_country"]==$_POST["country"]) {echo " selected=selected";} else {}; ?>><?php echo stripslashes($resultatcountry["users_country"]); ?></option>
    		<?php }; ?>
    		</select>

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    76
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2008
    Messages : 76
    Points : 45
    Points
    45
    Par défaut
    Merci.
    je suis débutant en PHP, et ce que j'essaie de faire avec le menu déroulant c'est d'afficher une page avec des infos sur des auteurs ( petite intro - livres - traduction...)
    voici un schéma de la BD:


    Comment puis-je lier le menu avec la page afficher.php? maintenant je sais qu' une boucle FOR ou While c'est pareil, je doit voir la requête.
    j'ai essayé ce code:
    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
     
    <?
    $ouvre = mysql_connect("localhost","root","");
    mysql_select_db ("livres1");
    $requet = mysql_query ("SELECT * FROM auteur WHERE id = '".$_GET['id']."'");
    mysql_close ($ouvre);
    ?>
    <html>
    <head>
    <title>affiche</title>
    </head>
    <body>
    <?
    echo mysql_result($requet, 0, "id");
    ?>
    </body>
    </html>
    mais ça ne marche pas

    Merci.

  6. #6
    Membre expérimenté
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    1 349
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 349
    Points : 1 460
    Points
    1 460
    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
    17
    18
    19
    20
    21
    22
    23
    24
     <html>
    <head>
    <title>essai1</title>
    </head>
    <body>
    <form id="form1" name="form1" method="get" action="affiche.php">
      <select name="select">
    <?
    include("connexion.php"); 
    $ouvre = mysql_connect($server, $login, $passw);
    mysql_select_db ($db);
    $sql1 = "SELECT * FROM auteur ORDER BY nom ASC ";
    $requet = mysql_query ($sql1) or die (mysql_error());
    while($res=mysql_fetch_assoc($requet)){
      echo '<option value="'.$res['id'].'">'.$res['nom'].'</option>';
    	}
    	?>
    </select>
    <input type="submit" name="Submit" value="afficher" />
     
    </form>
     
    </body>
    </html>
    et sur affiche.php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    <?
    if(isset($_GET['Submit'])){
    	$ouvre = mysql_connect("localhost","root","");
    	mysql_select_db ("livres1");
    	$requet = mysql_query ("SELECT * FROM auteur WHERE id = '".$_GET['id']."'");
    	$res=mysql_fetch_assoc($requet);
     
    echo '<html><head><title>affiche</title></head>
    	<body>'.$res['id'];
    	?>
    </body>
    </html>
    Stay in Bed .. Save Energy

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

Discussions similaires

  1. Réponses: 7
    Dernier message: 13/12/2010, 13h13
  2. Réponses: 4
    Dernier message: 04/09/2009, 10h58
  3. Réponses: 4
    Dernier message: 30/12/2005, 11h00
  4. Problème de boutons radio pour récuperer les infos
    Par marsupilami34 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 06/09/2005, 11h47
  5. [débutant] filtrer un fichier pour afficher des infos
    Par Valichou dans le forum API standards et tierces
    Réponses: 7
    Dernier message: 21/04/2004, 11h44

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