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 :

afficher puis lister toutes les photos [MySQL]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 17
    Par défaut afficher puis lister toutes les photos
    bonsoir,
    je cherche à lister toutes les photos qu'il pourrait y avoir dans une catégorie de ma base de données.
    j'arrive à insérer une 1ère photo, qui ensuite s'affiche sur la page voulue, mais quand j'en insère une seconde, et bien sur la page voulue, j'ai, l'un en dessous de l'autre 2 fois photo n°2 mais par contre j'ai bien les 2 titres différents...

    voici le code de cette page :
    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
    <HTML>
    <style type="text/css">
    <!--
    .Style1 {
    	font-family: Arial, Helvetica, sans-serif;
    	font-weight: normal;
    }
    .Style4 {font-family: "Comic Sans MS"}
    .Style5 {
    	font-size: 18px;
    	font-weight: bold;
    }
    .Style6 {font-family: Verdana, Arial, Helvetica, sans-serif}
    -->
    </style>
    <? require('./config/config.inc.php'); 
    //Récupération des infos de configuration à la base de données
    //Requête de lecture des articles de la base, ordonnés dans le sens decroissant des id
    $requete = mysql_query('SELECT * FROM articles ORDER BY id_articles DESC');
    $nom= mysql_result($requete,0,"nom");
    $image1=mysql_result($requete,0,"image1"); 
    $nbarticles = mysql_num_rows($requete);
    $id_articles = 'id_articles';
    ?>
     
      <div align="center" class="Style1">
        <p class="Style5">&nbsp;</p>
        <p class="Style5 Style6">LES ARTICLES DE PRESSE </p>
        <p>&nbsp;</p>
      </div>
      <TABLE width="650" height="92" border="1" align="center" cellspacing="2" bordercolor="#000000">
     
    <?
    $i=0;
    WHILE($i!=$nbarticles) {
    ?>
            <tr>
              <TD width="640" height="27" align="center" valign="top" class="Verdana_Noir_Gras Style4"><div align="center"><span class="Verdana_Noir_Gras"><span class="Verdana_Noir Style4"><span class="Verdana_Noir"><img src="<? echo $repimages.$image1 ?>"> </span></span></span></div>          </TR>
            <tr>
              <TD height="42" align="center" valign="top" class="Verdana_Noir_Gras"><div align="center"><span class="Verdana_Noir Style4"><span class="Verdana_Noir">
                <?php 
    echo mysql_result($requete,$i,"nom")
     
    ?>
              </span></span>        
              </div>
        </TR>
     
      <? $i++;
    }
    echo mysql_error()
    ?></table>
    <p></p>
    </HTML>
    pouvez vous m'aider ? Merci,
    Auryn

  2. #2
    Membre Expert
    Avatar de trotters213
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    2 571
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 571
    Par défaut

    c'est peut-être du à ton code HTML qui est catastrophique :
    - les balises c'est en minuscule
    - la balise style est encadré par la balise head
    - le corps de ton document html doit être encadré par la balise body
    - tu ne fermes aucune balises (alors qu'elles doivent toutes l'être)
    - tu devrais jeter un coup d'oeil sur les cours de CSS parce que tu utilises des span à foison et ça ne sert à rien dans ton cas
    - aucun des styles que tu implémentes n'est utilisé et aucun des span que tu crées n'a de style

    En gros tu dois avoir un truc ce style
    Code HTML : 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
    <html>
    <head>
    <style type="text/css">
    .Style1 {
            font-family: Arial, Helvetica, sans-serif;
            font-weight: normal;
    }
    .Style4 {font-family: "Comic Sans MS"}
    .Style5 {
            font-size: 18px;
            font-weight: bold;
    }
    .Style6 {font-family: Verdana, Arial, Helvetica, sans-serif}
    </style>
    </head>
     
    <? require('./config/config.inc.php'); 
    //Récupération des infos de configuration à la base de données
    //Requête de lecture des articles de la base, ordonnés dans le sens decroissant des id
    $requete = mysql_query('SELECT * FROM articles ORDER BY id_articles DESC');
    $nom= mysql_result($requete,0,"nom");
    $image1=mysql_result($requete,0,"image1"); 
    $nbarticles = mysql_num_rows($requete);
    $id_articles = 'id_articles';
    ?>
    <body>
     
      <div align="center" class="Style1">
        <p class="Style5">&nbsp;</p>
        <p class="Style5 Style6">LES ARTICLES DE PRESSE </p>
        <p>&nbsp;</p>
      </div>
      <table width="650" height="92" border="1" align="center" cellspacing="2" bordercolor="#000000">
     
    <?
    $i=0;
    WHILE($i!=$nbarticles) {
    ?>
    <tr>
      <td ...><div align="center"><span en pagaille><img src="<? echo $repimages.$image1 ?>"> </span></span></span></div> </td>         
    </tr>
    <tr>
      <td ...><div align="center"><span en pagaille><?php echo mysql_result($requete,$i,"nom")?></span></span></div></td> 
    </tr>
     
      <? $i++;
    }
    echo mysql_error()
    ?>
    </table>
    <p></p>
    </body>
    </html>
    PS : l'utilisation d'un tableau ici n'est pas bonne mais ça c'est une autre histoire.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 17
    Par défaut
    Bonjour,
    merci de ta réponse, j'ai nettoyé mon code comme tu m'a dit.
    je ne comprends pas pourquoi l'utilisation d'un tableau n'est pas correcte ?
    et je n'arrive tjrs pas à trouver mon erreur pour les images qui ne s'affichent pas correctement, alors que les titres sont bons. c'est d'ailleurs pour l'esprit "pratique" que j'avais fait un tableau : 1 colonne pour l'image et 1 colonne pour le titre de l'image.....

    Bonne journée
    Auryn

  4. #4
    Membre Expert
    Avatar de trotters213
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    2 571
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 571
    Par défaut
    Citation Envoyé par auryn111
    c'est d'ailleurs pour l'esprit "pratique" que j'avais fait un tableau : 1 colonne pour l'image et 1 colonne pour le titre de l'image.....
    Ce n'est pas ce que tu fais : toi tu crées une ligne pour le titre et une ligne pour l'image (tr = nouvelle ligne, td = nouvelle colonne)
    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
    <body>
     
      <div align="center" class="Style1">
        <p class="Style5">&nbsp;</p>
        <p class="Style5 Style6">LES ARTICLES DE PRESSE </p>
        <p>&nbsp;</p>
      </div>
     
    <?php
    $i=0;
    WHILE($i!=$nbarticles) {
    ?>
     
    <div style="float:left">
    	<img src="<?php echo $repimages.$image1 ?>" />
    </div>    
    <div style="float:right">
    	<?php echo mysql_result($requete,$i,"nom")?>
    </div> 
     
    <?php
    $i++;
    }
    echo mysql_error()
    ?>
    </body>
    PS : je n'y ai pas pensé tout à l'heure mais utilise <?php plutôt que <?

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 17
    Par défaut
    merci beaucoup pour tes explications
    par contre, j'ai tjrs le meme pb à savoir que l'image n° 2 s'affiche dans les 2 cas, alors que le titre 1 et titre 2 (variable "nom") apparaissent eux correctement..

  6. #6
    Membre Expert
    Avatar de trotters213
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    2 571
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 571
    Par défaut
    c'est normal tu récupère le premier résultat de la requête SQL, tu ne parcours pas le tableau de résultats. Essaie comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    $result = mysql_query($query);//execution requête
    while ($row = mysql_fetch_array($result)) //pour chaque ligne du tableau renvoyé
    {
       echo ($row[0].'<br />'.$row[1].'<br />'.../*autant de fois que tu as de champs dans ta table*/);
    }
    Je te donnes le principe maintenant à toi de mettre tout en place

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

Discussions similaires

  1. Lister toutes les clés étrangères de toutes le tables
    Par Samish dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 30/08/2005, 10h15
  2. lister tout les modules installer de perl
    Par black_code dans le forum Modules
    Réponses: 6
    Dernier message: 05/08/2005, 18h20
  3. afficher l'heure toutes les minutes
    Par rvfranck dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 22/02/2005, 14h12
  4. [firebird 1.5] lister toutes les tables
    Par c0rwyn dans le forum SQL
    Réponses: 2
    Dernier message: 02/09/2004, 14h36
  5. Réponses: 8
    Dernier message: 17/10/2002, 12h52

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