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 :

Problème de Boucle


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 Jiraiya42
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    671
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 671
    Par défaut Problème de Boucle
    Bonjour,

    J'essai de récupérer le nom, le genre et un nombre contenus dans une table "films" et le nom de l'emprunteur contenu dans la table "emprunteur" seulement j'ai un problème en ce qui concerne le nom de l'emprunteur, je n'arrive pas à l'afficher correctement:

    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
    <?PHP
    			// on se connecte à MySQL et on sélectionne la base
    			require ("./connect.php");
    	    	        mysql_connect (SERVEUR, NOM, PASSE) or die(mysql_error);
           		        mysql_select_db (BASE) or die(mysql_error);
     
    			// on crée la requête SQL
    			$requete = "SELECT nomfilm, genrefilm, posfilm FROM films ORDER  BY nomfilm LIMIT 0 , 13;";
    			$res = mysql_query($requete) or die('Erreur SQL !<br>'.$requete.'<br>'.mysql_error());
     
    			// autre requete
    			$request = "SELECT nomemp FROM emprunteur e, films f WHERE e.nomfilm = '".$res['nomfilm']."';";
    			$resultat = mysql_query($request) or die('Erreur SQL !<br>'.$request.'<br>'.mysql_error());
     
    			// on fait une boucle qui va faire un tour pour chaque enregistrement
    			while($data = mysql_fetch_assoc($res))
        			{
        				// on affiche les informations dans un tableau
        	?>
        		<TR>
        			<TD><?PHP echo stripslashes($data['nomfilm']); ?></TD>
        			<TD><?PHP echo stripslashes($data['genrefilm']); ?></TD>
        			<TD><?PHP echo stripslashes($data['posfilm']); ?></TD>
        			<TD><?PHP
        					if($resultat = "")
        						{
        							echo 'Nom emprunté';
    							}
        					else
        						{
        							echo '".$resultat."';
    							}
        				?>
        			</TD>
        		</TR>
     
        	<?PHP
        			}
     
    			// on ferme la connexion à mysql
    			mysql_close();
    		?>
    Quelqu'un peut m'aider svp ?

    Merci d'avance...

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

    Informations forums :
    Inscription : Juillet 2005
    Messages : 774
    Par défaut
    explique davantage!
    s'affiche pas correctement??
    autrement le reste des elements selectionnés s'affiche correctement?

  3. #3
    Membre éclairé Avatar de Jiraiya42
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    671
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 671
    Par défaut
    Citation Envoyé par ouatmad
    explique davantage!
    s'affiche pas correctement??
    autrement le reste des elements selectionnés s'affiche correctement?
    En fait, j'obtiens dans mon tableau

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    nom             genre                 num              ".$resultat."
    Et moi je voudrait avoir à la place du ".$resultat." rien s'il n'a pas été emprunté et le nom de l'emprunteur s'il est emprunté

    Une idée svp ?

  4. #4
    Membre émérite
    Avatar de kankrelune
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    763
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 763
    Par défaut
    Remplace... .. .

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    echo '".$resultat."';
    par

    Php n'interprète pas ce qui se trouve entre simple quotes... .. .

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    $resultat = 10;
     
    echo '$resultat'; // affichera : $resultat
    echo $resultat; // affichera : 10
    @ tchaOo°

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

    Informations forums :
    Inscription : Juillet 2005
    Messages : 774
    Par défaut
    je vois deux(2) erreurs dans ton code
    1. primo, il faut savoir que resultat est une ressource, donc n'est pas le nom de l'emprunteur. il faut plutot d'abord un mysql_fetch_array(assoc) de $resultat avant de commencer a tester son contenu.
      exemple:
      Code : Sélectionner tout - Visualiser dans une fenêtre à part
      1
      2
      3
       while ($emprunteur=mysql_fetch_array($resultat)){
           if($emprunteur['nom_empr']==xxxxxxxxxxxxx
       }
    2. secundo: pourquoi ne ferais tu pas simplement
      echo "Emprunteur:".$emprunteur['nom_empr'];

  6. #6
    Membre éclairé Avatar de Jiraiya42
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    671
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 671
    Par défaut
    Citation Envoyé par ouatmad
    je vois deux(2) erreurs dans ton code
    1. primo, il faut savoir que resultat est une ressource, donc n'est pas le nom de l'emprunteur. il faut plutot d'abord un mysql_fetch_array(assoc) de $resultat avant de commencer a tester son contenu.
      exemple:
      Code : Sélectionner tout - Visualiser dans une fenêtre à part
      1
      2
      3
       while ($emprunteur=mysql_fetch_array($resultat)){
           if($emprunteur['nom_empr']==xxxxxxxxxxxxx
       }
    2. secundo: pourquoi ne ferais tu pas simplement
      echo "Emprunteur:".$emprunteur['nom_empr'];
    Ben je voudrais que pour chaque ligne (et donc chaque livre) ça m'affiche l'emprunteur ou "Non emprunté" s'il ne l'est pas j'ai mis ça:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    <TD><?PHP
        			if($resultat == "")
        				{
        					echo 'Nom emprunté';
    				}
        			else
        				{
        					while($ligne = mysql_fetch_assoc($resultat))
        						{
    	    					       echo $ligne['nomemp'];
        						}
    				}
        		   ?>
        	 </TD>
    Mais ça n'affiche rien du tout, pas le nom de l'emprunteur ni "Nom emprunté"

    Une idée svp ?

  7. #7
    Membre émérite
    Avatar de kankrelune
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    763
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 763
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    if(mysql_num_rows($resultat) === 0)
      echo 'Nom emprunté';
    else
    {
        	while($ligne = mysql_fetch_assoc($resultat))
        		echo $ligne['nomemp'];
    }
    @ tchaOo°

Discussions similaires

  1. Problème de boucles imbriquées
    Par Gnux dans le forum Algorithmes et structures de données
    Réponses: 9
    Dernier message: 09/12/2005, 20h26
  2. [Tableaux] Problème avec boucle
    Par MYster dans le forum Langage
    Réponses: 6
    Dernier message: 11/11/2005, 18h39
  3. Problème de boucle
    Par TheUltimaSephiroth dans le forum C
    Réponses: 8
    Dernier message: 10/10/2005, 13h58
  4. Problème de boucle
    Par Louis-Guillaume Morand dans le forum Langage SQL
    Réponses: 3
    Dernier message: 25/09/2005, 09h10
  5. Problème de boucle
    Par basclln dans le forum C++
    Réponses: 19
    Dernier message: 02/04/2005, 09h13

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