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 :

[Tableaux] affichage d'une requete SQL sur 2 colonnes


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Profil pro
    Étudiant
    Inscrit en
    Mars 2007
    Messages
    60
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2007
    Messages : 60
    Points : 21
    Points
    21
    Par défaut [Tableaux] affichage d'une requete SQL sur 2 colonnes
    bonjour, grâce a une requete SQL, je recupere les libellés de 6 boutons
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <?
    $req = "SELECT * FROM architecture ARC, translate_libelle TRA WHERE ARC.ID_Architecture = TRA.ID_Architecture AND ARC_Niveau = '2' AND ID_ArchitectModu = '' AND ARC.ID_Architecture like'A%' AND ID_Language = 'FRA'  ORDER BY ARC_ORDRE";
    $oConnexion->execute($req); 
    while($oConnexion->moveNext() != -1)
    {
    $TempRecord = $oConnexion->get();
    ?><a href=file:///x:/wwwroot/Supersoniks/projet2.html class="bouton"><?= $TempRecord["TRA_Libelle"]?></a><?
    }
    ?>
    Ce code me permet donc d'afficher sur ma page mes 6 boutons, mais maintenant j'aimerais pouvoir les afficher sur 2 colonnes mais je n'arrive pas a trouver l'algoritme correspondant.. aidez-moi !
    merci a tous !
    Cordialement, Tondeuz

  2. #2
    Membre habitué
    Inscrit en
    Mai 2006
    Messages
    139
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Mai 2006
    Messages : 139
    Points : 147
    Points
    147
    Par défaut
    Tu crées un tableau au départ.

    Lors du parcours de tes résultats, il que tu incrémentes un compteur, et que tu testes à chaque passage dans ta boucle si le compteur est pair ou impair (pour cela, tu as l'opérateur "modulo : %", correspond au reste d'une division).

    En fonction du cas, tu crées une nouvelle ligne et une nouvelle cellule, ou uniquement une nouvelle cellule.

    Ton résultat sera de la forme
    Si tu cherches plutôt un rendu de la forme
    je pense qu'il faudra que tu passes par un tableau dans un premier temps, et que tu traites ce tableau par la suite.

  3. #3
    Membre à l'essai
    Profil pro
    Étudiant
    Inscrit en
    Mars 2007
    Messages
    60
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2007
    Messages : 60
    Points : 21
    Points
    21
    Par défaut
    je vois ce que tu veux dire, j'ai deja un tableau mais je ne vois pas comment mettre en place cette algoritme..
    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
     
    <table border="0"cellspacing="0" cellpadding="0" width=100%  bgcolor=#A9A9A9 height="180">
    <tr>
    <td width=100% valign="top">
    <?
    $req = "SELECT * FROM architecture ARC, translate_libelle TRA WHERE ARC.ID_Architecture = TRA.ID_Architecture AND ARC_Niveau = '2' AND ID_ArchitectModu = '' AND ARC.ID_Architecture like'A%' AND ID_Language = 'FRA'  ORDER BY ARC_ORDRE";
    $oConnexion->execute($req);
    $i=0;
    while($oConnexion->moveNext() != -1)
    {
    $TempRecord = $oConnexion->get();
    ?><a href=file:///x:/wwwroot/Supersoniks/projet2.html class="bouton"><?= $TempRecord ["TRA_Libelle"]?></a><?
    }
    ?>
    </td>
    </tr>
    </table>
    quelqun aurait un exemple de code sil vous plait ??
    Cordialement, Tondeuz

  4. #4
    Membre habitué
    Inscrit en
    Mai 2006
    Messages
    139
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Mai 2006
    Messages : 139
    Points : 147
    Points
    147
    Par défaut
    Regarde ce sujet, j'avais posté une réponse pour un problème équivalent :
    http://www.developpez.net/forums/sho...d.php?t=337584

  5. #5
    Membre à l'essai
    Profil pro
    Étudiant
    Inscrit en
    Mars 2007
    Messages
    60
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2007
    Messages : 60
    Points : 21
    Points
    21
    Par défaut
    jai beau regarder mais ce n'est pas vraiment le meme soucis, mon fichier etant differement organisé je ne peux pas utiliser cette solution..a laide
    Cordialement, Tondeuz

  6. #6
    Membre expert
    Inscrit en
    Janvier 2005
    Messages
    2 291
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 291
    Points : 3 212
    Points
    3 212
    Par défaut
    Il t'a pourtant bien expliqué la logique là...

    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
     
     
    <table border="0"cellspacing="0" cellpadding="0" width=100%  bgcolor=#A9A9A9 height="180">
    <tr>
    <?
    $req = "SELECT * FROM architecture ARC, translate_libelle TRA WHERE ARC.ID_Architecture = TRA.ID_Architecture AND ARC_Niveau = '2' AND ID_ArchitectModu = '' AND ARC.ID_Architecture like'A%' AND ID_Language = 'FRA'  ORDER BY ARC_ORDRE";
    $oConnexion->execute($req);
    $i=0;
    while($oConnexion->moveNext() != -1)
    {
    // si deja deux boutons d'affichés
    if($i%2== 0 && $i !=0)
    {
    echo "</tr><tr>";
    }
    $i++;
    $TempRecord = $oConnexion->get();
    ?>
    <td width=100% valign="top">
    <a href=file:///x:/wwwroot/Supersoniks/projet2.html class="bouton"><?= $TempRecord ["TRA_Libelle"]?></a>
    </td><?
    }
    ?>
    </tr>
    </table>
    A tester bien sur, mais l'idée est la: a chaque nouveau bouton tu regardes si tu en as déjà affiché 2 ou pas, si oui tu fermes la balise <tr> pour aller a la prochaine ligne et tu fais une autre ligne.
    et a chaque bouton tu ouvres et fermes une balise <td> pour faire une nouvelle colonne

Discussions similaires

  1. Réponses: 2
    Dernier message: 06/03/2008, 14h26
  2. Réponses: 23
    Dernier message: 19/09/2006, 11h33
  3. [VB6] Ecrire une requete SQL sur plusieurs lignes!
    Par big x dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 08/05/2006, 16h28
  4. Ecrire une requete SQL sur plusieurs lignes
    Par PrinceMaster77 dans le forum ASP
    Réponses: 2
    Dernier message: 15/11/2004, 14h47
  5. Réponses: 2
    Dernier message: 03/05/2004, 12h13

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