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 :

php lister la table & bgcolor


Sujet :

Langage PHP

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    412
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Décembre 2008
    Messages : 412
    Points : 79
    Points
    79
    Par défaut php lister la table & bgcolor
    Bonjour,

    J'ai deux problèmes.

    1/ Quand je liste le contenue de ma table (mysql) avec php l'affichage commencce par l'id 2 et non par le 1?
    Ai-je fait une erreur ?

    php affiche :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Id 	Utilisateur 	Conserne 	Adresse ip 	Nom poste 	mot de passe
     
    2 	0 	0 	0 	poste12 	0
    3 				poste13 	
    4 				poste14
    table mysql (depuis phpmyadmin) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    id 	utilisateur 	conserne 	adresse_ip 	nom_poste 	mdp
    1 	0 	0 	0 	poste11 	0
    2 	0 	0 	0 	poste12 	0
    3 	  	  	  	poste13 	 
    4 	  	  	  	poste14
    Ma table mysql :
    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
    --
    -- Base de données: `telephonie`
    --
     
    -- --------------------------------------------------------
     
    --
    -- Structure de la table `poste`
    --
     
    CREATE TABLE IF NOT EXISTS `poste` (
      `id` int(11) NOT NULL AUTO_INCREMENT,
      `utilisateur` varchar(80) NOT NULL,
      `conserne` varchar(80) NOT NULL,
      `adresse_ip` varchar(16) NOT NULL,
      `nom_poste` varchar(20) NOT NULL,
      `mdp` varchar(20) NOT NULL,
      KEY `id` (`id`)
    ) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=5 ;
     
    --
    -- Contenu de la table `poste`
    --
     
    INSERT INTO `poste` (`id`, `utilisateur`, `conserne`, `adresse_ip`, `nom_poste`, `mdp`) VALUES
    (1, '0', '0', '0', 'poste11', '0'),
    (2, '0', '0', '0', 'poste12', '0'),
    (3, '', '', '', 'poste13', ''),
    (4, '', '', '', 'poste14', '');
    2/ je voudrai colorier les lignes, toute les 2 lignes
    Ou dois-je positionner bgcolors

    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
    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
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <title>Les postes Asterisk</title>
    <style type="text/css">
    <!--
    a:link {
    	text-decoration: none;
    }
    a:visited {
    	text-decoration: none;
    }
    a:hover {
    	text-decoration: underline;
    }
    a:active {
    	text-decoration: none;
    }
    -->
    </style></head>
     
    <body>
     
    <p>
    <?php include("../N4/template/entete.php"); ?>
      <?php
    mysql_connect("localhost", "xxxx", "xxxxxx"); // Connexion à MySQL
    mysql_select_db("telephonie"); // Sélection de la base de donnée
     
     
    $reponse = mysql_query("SELECT * FROM poste"); // Requête SQL
    $donnees = mysql_fetch_assoc($reponse); // liste ce que contient la table
     
     ?>
    </p>
    <p align="center">Les postes Asterisk </p>
    <table width="2375" border="0">
      <tr>
        <th width="23" bgcolor="#999999" scope="col">Id</th>
        <th width="152" bgcolor="#999999" scope="col">Utilisateur</th>
        <th width="98" bgcolor="#999999" scope="col">Conserne </th>
        <th width="90" bgcolor="#999999" scope="col">Adresse ip</th>
        <th width="161" bgcolor="#999999" scope="col">Nom poste</th>
        <th width="348" bgcolor="#999999" scope="col">mot de passe</th>
     
      </tr>
      <tr>
        <th scope="row">&nbsp;</th>
        <td>&nbsp;</td>
        <td>&nbsp;</td>
        <td>&nbsp;</td>
        <td>&nbsp;</td>
        <td>&nbsp;</td>
        <td>&nbsp;</td>
      </tr>
     
     
    <?php
     
    // ... Modulos -->  initialise $i à 0 
        $i = 0; 
        $bgcolor = ($i++ & 1) ? '#fff' : '#000'; 
     
    while ($donnees = mysql_fetch_array($reponse) ) // boucle pour lister tout ce que contient la table : modules_x10
    {
     
    ?>
      <tr>
        <th bgcolor='.$bgcolor.' scope="row"><?php echo $donnees["id"]; ?></th>
    	<td bgcolor='.$bgcolor.'><?php echo $donnees["utilisateur"]; ?></td>
        <td bgcolor="#CCCCCC"><?php echo $donnees["conserne"]; ?></td>
        <td bgcolor="#CCCCCC"><?php echo $donnees["adresse_ip"]; ?></td>
        <td bgcolor="#CCCCCC"><?php echo $donnees["nom_poste"]; ?></td>
        <td bgcolor="#CCCCCC"><?php echo $donnees["mdp"]; ?></td>
     
      </tr>
    <?php } //toute la ligne est comprise dans la boucle while?>
    </table>
     
     <p align="center">[<a href="../N4/index.php">Accueil</a>] - [<a href="../N4/index.php?page=agenda-telephonique">Sommaire</a>]  - [<a href="../agenda-telephonique/annuaire-mysql-Insert-une-entree.php">Ajouter</a>] - [<a href="../agenda-telephonique/annuaire-mysql-modifier-une-ligne.php">Modifier</a>] - [<a href="../agenda-telephonique/annuaire-mysql-supprimer-une-ligne-mysql.php">Supprimer</a>] - [<a href="../agenda-telephonique/annuaire-mysql-recherche-des-donnees.php">Rechercher</a>]
       <?php include('../commun/template/pied.php3'); ?>
    <td><FORM>
    <INPUT TYPE="button" 
    	VALUE="Retour"
    	onClick="history.back()">
    </FORM>
     
     
    </body>
    </html>
     
    <?php
     
    mysql_close(); // Fermeture de la connexion Mysql
    ?>
    Merci.
    Intel I7 960 | 6 Go Ram | 5 HDD au total 3636 Go | Windows 7 Edition intégral x64 | WampServer 2.0c | Apache 2.2.8 | Php 5.2.6 | MySQL 5.0.51b
    DreamPlug | 512 mo ram | SSD 16 GO | Linux debian 2.6.39.4 | armv5tel | Lamp | PHP 5.3.3-7 | Apache 2.2.16 | Mysql 14.14

  2. #2
    Membre émérite
    Avatar de Seb33300
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2007
    Messages
    1 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Thaïlande

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 563
    Points : 2 390
    Points
    2 390
    Par défaut
    Salut,

    Juste apres ta requete tu fais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $donnees = mysql_fetch_assoc($reponse); // liste ce que contient la table
    C'est la que se trouve ta première ligne.
    Tu as juste à supprimer cette ligne pour que ton while commence par la première ligne.
    Zend Certified PHP Engineer

    « Crois-tu comprendre le monde juste en matant le 20H Ou connaître l'histoire en ayant lu que l'angle des vainqueurs ? » Keny Arkana

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    412
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Décembre 2008
    Messages : 412
    Points : 79
    Points
    79
    Par défaut
    Bonjour,

    Jai rempacé la ligne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    while ($donnees = mysql_fetch_array($reponse) ) // boucle pour lister tout ce que contient la table
    par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $donnees = mysql_fetch_assoc($reponse); // liste ce que contient la table
    Mais il y a uniquement l'id 2 qui s'affiche ???
    Ou bien j'ai pas compris !

    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
    <p align="center">Les postes Asterisk </p>
    <table width="2375" border="0">
      <tr>
        <th width="23" bgcolor="#999999" scope="col">Id</th>
        <th width="152" bgcolor="#999999" scope="col">Utilisateur</th>
        <th width="98" bgcolor="#999999" scope="col">Conserne </th>
        <th width="90" bgcolor="#999999" scope="col">Adresse ip</th>
        <th width="161" bgcolor="#999999" scope="col">Nom poste</th>
        <th width="348" bgcolor="#999999" scope="col">mot de passe</th>
     
      </tr>
      <tr>
        <th scope="row">&nbsp;</th>
        <td>&nbsp;</td>
        <td>&nbsp;</td>
        <td>&nbsp;</td>
        <td>&nbsp;</td>
        <td>&nbsp;</td>
        <td>&nbsp;</td>
      </tr>
     
     
    <?php
     
     
        $i = 0; 
        $bgcolor = ($i++ & 2) ? '#fff' : '#000'; 
     
    $donnees = mysql_fetch_array($reponse) ; // boucle pour lister tout ce que contient la table : poste
    {
     
    ?>
      <tr>
        <th bgcolor='.$bgcolor.' scope="row"><?php echo $donnees["id"]; ?></th>
    	<td bgcolor='.$bgcolor.'><?php echo $donnees["utilisateur"]; ?></td>
        <td bgcolor="#CCCCCC"><?php echo $donnees["conserne"]; ?></td>
        <td bgcolor="#CCCCCC"><?php echo $donnees["adresse_ip"]; ?></td>
        <td bgcolor="#CCCCCC"><?php echo $donnees["nom_poste"]; ?></td>
        <td bgcolor="#CCCCCC"><?php echo $donnees["mdp"]; ?></td>
     
      </tr>
    <?php } //toute la ligne est comprise dans la boucle while?>
    </table>
    Intel I7 960 | 6 Go Ram | 5 HDD au total 3636 Go | Windows 7 Edition intégral x64 | WampServer 2.0c | Apache 2.2.8 | Php 5.2.6 | MySQL 5.0.51b
    DreamPlug | 512 mo ram | SSD 16 GO | Linux debian 2.6.39.4 | armv5tel | Lamp | PHP 5.3.3-7 | Apache 2.2.16 | Mysql 14.14

  4. #4
    Membre émérite
    Avatar de Seb33300
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2007
    Messages
    1 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Thaïlande

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 563
    Points : 2 390
    Points
    2 390
    Par défaut
    Tu n'as rien à modifier, juste à supprimer la ligne 33.
    Zend Certified PHP Engineer

    « Crois-tu comprendre le monde juste en matant le 20H Ou connaître l'histoire en ayant lu que l'angle des vainqueurs ? » Keny Arkana

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    412
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Décembre 2008
    Messages : 412
    Points : 79
    Points
    79
    Par défaut
    Bonjour

    Quand je supprime la ligne 33
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $donnees = mysql_fetch_assoc($reponse); // liste ce que contient la table
    j'ai uniquement l'id 1 qui s'affiche.

    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
    <?php
     
     
        $i = 0; 
        $bgcolor = ($i++ & 2) ? '#fff' : '#000'; 
     
    //while ($donnees = mysql_fetch_array($reponse) )  // boucle pour lister tout ce que contient la table : poste
    {
     
     
    ?>
      <tr>
        <th bgcolor='.$bgcolor.' scope="row"><?php echo $donnees["id"]; ?></th>
        <td bgcolor='.$bgcolor.'><?php echo $donnees["utilisateur"]; ?></td>
        <td bgcolor='.$bgcolor.'><?php echo $donnees["conserne"]; ?></td>
        <td bgcolor='.$bgcolor.'><?php echo $donnees["adresse_ip"]; ?></td>
        <td bgcolor='.$bgcolor.'><?php echo $donnees["nom_poste"]; ?></td>
        <td bgcolor='.$bgcolor.'><?php echo $donnees["mdp"]; ?></td>
     
      </tr>
    <?php } //toute la ligne est comprise dans la boucle while?>
    </table>
    Y a un truc que je pige pas ?

    Merci.
    Intel I7 960 | 6 Go Ram | 5 HDD au total 3636 Go | Windows 7 Edition intégral x64 | WampServer 2.0c | Apache 2.2.8 | Php 5.2.6 | MySQL 5.0.51b
    DreamPlug | 512 mo ram | SSD 16 GO | Linux debian 2.6.39.4 | armv5tel | Lamp | PHP 5.3.3-7 | Apache 2.2.16 | Mysql 14.14

  6. #6
    Expert confirmé
    Avatar de Doksuri
    Profil pro
    Développeur Web
    Inscrit en
    Juin 2006
    Messages
    2 451
    Détails du profil
    Informations personnelles :
    Âge : 54
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 451
    Points : 4 600
    Points
    4 600
    Par défaut
    pourquoi t'as ton while() en commentaire ?
    La forme des pyramides prouve que l'Homme a toujours tendance a en faire de moins en moins.

    Venez discuter sur le Chat de Développez !

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    412
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Décembre 2008
    Messages : 412
    Points : 79
    Points
    79
    Par défaut
    Bonjour,

    A mince j'ai pas fait gaffe, effectivement .
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    $reponse = mysql_query("SELECT * FROM poste"); // Requête SQL
    //$donnees = mysql_fetch_assoc($reponse); // liste ce que contient la table
    Reste avoir pour le bgcolor
    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
    <?php
     
     
        $i = 0; 
        $bgcolor = ($i++ & 2) ? '#fff' : '#000'; 
     
    while ($donnees = mysql_fetch_array($reponse) ) // boucle pour lister tout ce que contient la table
    {
     
    ?>
      <tr>
        <th bgcolor='.$bgcolor.' scope="row"><?php echo $donnees["id"]; ?></th>
        <td bgcolor='.$bgcolor.'><?php echo $donnees["utilisateur"]; ?></td>
        <td bgcolor='.$bgcolor.'><?php echo $donnees["conserne"]; ?></td>
        <td bgcolor='.$bgcolor.'><?php echo $donnees["adresse_ip"]; ?></td>
        <td bgcolor='.$bgcolor.'><?php echo $donnees["nom_poste"]; ?></td>
        <td bgcolor='.$bgcolor.'><?php echo $donnees["mdp"]; ?></td>
     
      </tr>
    <?php } //toute la ligne est comprise dans la boucle while?>
    </table>
    Toutes les lignes sont vertes. alors que je voudrai une couleur différente toutes les 2 lignes ?

    logiquement il faudrait mettre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    while($donnees= mysql_fetch_row($reponse))
    mais il y a déjà :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    while ($donnees = mysql_fetch_array($reponse) )
    Comment faire ?

    Merci.
    Intel I7 960 | 6 Go Ram | 5 HDD au total 3636 Go | Windows 7 Edition intégral x64 | WampServer 2.0c | Apache 2.2.8 | Php 5.2.6 | MySQL 5.0.51b
    DreamPlug | 512 mo ram | SSD 16 GO | Linux debian 2.6.39.4 | armv5tel | Lamp | PHP 5.3.3-7 | Apache 2.2.16 | Mysql 14.14

  8. #8
    Expert confirmé
    Avatar de Doksuri
    Profil pro
    Développeur Web
    Inscrit en
    Juin 2006
    Messages
    2 451
    Détails du profil
    Informations personnelles :
    Âge : 54
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 451
    Points : 4 600
    Points
    4 600
    Par défaut
    pourquoi tu n'as pas mis tes $bgcolor dans des balises php ?

    ps : ce cerait plus efficasse d'incrementer ton $i dans la boucle non ?
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <?php
    $i=0;
    while(...) {
    $i++;
    $bgcolor = ($i & 2) ? '#fff' : '#000';
    ...
    ?>
    <th bgcolor='<?php echo $bgcolor; ?>' scope="row"><?php echo $donnees["id"]; ?></th>
    }
    La forme des pyramides prouve que l'Homme a toujours tendance a en faire de moins en moins.

    Venez discuter sur le Chat de Développez !

  9. #9
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    412
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Décembre 2008
    Messages : 412
    Points : 79
    Points
    79
    Par défaut
    Bonjour,

    Merci, c'est impec.
    Intel I7 960 | 6 Go Ram | 5 HDD au total 3636 Go | Windows 7 Edition intégral x64 | WampServer 2.0c | Apache 2.2.8 | Php 5.2.6 | MySQL 5.0.51b
    DreamPlug | 512 mo ram | SSD 16 GO | Linux debian 2.6.39.4 | armv5tel | Lamp | PHP 5.3.3-7 | Apache 2.2.16 | Mysql 14.14

  10. #10
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 418
    Points
    91 418
    Billets dans le blog
    20
    Par défaut
    Ou dois-je positionner bgcolors
    Nulle part !

    La mise en forme se fait en CSS, plus en HTML depuis belle lurette !
    Surtout que maintenant, ça se gère aussi facilement que
    Code css : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    td:nth-of-type('even'){
        background-color: blue;
    }
    td:nth-of-type('odd'){
        background-color: yellow;
    }
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

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

Discussions similaires

  1. Lister les tables
    Par chahi dans le forum PostgreSQL
    Réponses: 11
    Dernier message: 13/01/2009, 12h58
  2. [Debutant] Lister les tables d'une base de données
    Par Konrad Florczak dans le forum Langage SQL
    Réponses: 2
    Dernier message: 06/07/2005, 16h24
  3. Lister les tables d'une base
    Par pg_user dans le forum PostgreSQL
    Réponses: 3
    Dernier message: 13/05/2005, 10h41
  4. [ODBC] Intranet en PHP : Lister les tables d'une base Access
    Par fblouet dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 28/10/2003, 14h46
  5. Lister les tables d'une Base
    Par YanK dans le forum PostgreSQL
    Réponses: 4
    Dernier message: 08/10/2003, 10h40

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