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

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    avril 2005
    Messages
    168
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : avril 2005
    Messages : 168
    Points : 67
    Points
    67

    Par défaut tableau html et affichage des données issues d'une requête PostgreSQL

    Bonjour,

    Je souhaite afficher les données d'une requête dans un tableau html, jusque là tout va bien.
    Si la première ligne de données se place bien sous la ligne des entêtes de colonnes, le reste des données est sur une ligne tout à la queue leu leu, a côté de la première ligne.
    Je ne trouve pas le moyen de fair een sorte que les valeurs s'empilent correctement dans le tableau...

    Voici le code et le résultat en pj:
    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
     
    <?php
     
    if (!isset($marequete)) 
    	{
    		echo "le code tranche n'existe pas" ;
    }
    ELSE
    	{$ligne = pg_fetch_array($marequete) ;
    	} 
     
    //affichage des champs de la table nb_fait_operation
     
    if (isset($_POST['submit']))
    		echo "" ;
     
    ?>					
    <div name='tableau'>
    	<table name="tableau_nbfaitop" >
    	 <thead>
    	  <tr>
    		<th>code_tranche</th>
    		<th>nom_operation</th>
    		<th>interpretation</th>
    		<th>nombre</th>
    	  </tr>
    	 </thead>
    	<?php while ($ligne = pg_fetch_array($marequete))
    	{
    	?>
    	 <tbody>
    	  <tr>
    		<td><?php echo $ligne["code_tranche"] ;?></td>
    		<td><?php echo $ligne["nomope"] ;?></td> 
    		<td><?php echo $ligne["interpret"] ; ?></td>
    		<td><?php echo $ligne["nombre"] ;?></td>
    	  </tr>
    	 </tbody>
    	</table>
    </div>
    <?php					
    	}	
    ?>
    Merci
    Images attachées Images attachées  

  2. #2
    Membre actif
    Avatar de Sparky95
    Homme Profil pro
    Étudiant
    Inscrit en
    décembre 2016
    Messages
    194
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 23
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : décembre 2016
    Messages : 194
    Points : 202
    Points
    202

    Par défaut

    Salut,
    Ta fermeture de boucle est mauvaise.
    Essaye d'inspecter ta page ou d'en voir le code source. Cela pourrait t'aider à voir l'erreur que tu as fais

  3. #3
    Modérateur

    Avatar de MaitrePylos
    Homme Profil pro
    DBA & Dev PHP
    Inscrit en
    juin 2005
    Messages
    4 980
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : DBA & Dev PHP
    Secteur : Service public

    Informations forums :
    Inscription : juin 2005
    Messages : 4 980
    Points : 11 114
    Points
    11 114

    Par défaut

    Essaye avec un code organisé pour voir :

    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
     
    <!doctype html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport"
              content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
        <meta http-equiv="X-UA-Compatible" content="ie=edge">
        <title>Document</title>
    </head>
    <body>
    <?php if (!isset($marequete)): ?>
        <b>le code tranche n'existe pas</b>
    <?php else: ?>
        <div name='tableau'>
            <table name="tableau_nbfaitop">
                <thead>
                <tr>
                    <th>code_tranche</th>
                    <th>nom_operation</th>
                    <th>interpretation</th>
                    <th>nombre</th>
                </tr>
                </thead>
                <tbody>
                <?php while ($ligne = pg_fetch_array($marequete)): ?>
     
                    <tr>
                        <td><?php echo $ligne["code_tranche"]; ?></td>
                        <td><?php echo $ligne["nomope"]; ?></td>
                        <td><?php echo $ligne["interpret"]; ?></td>
                        <td><?php echo $ligne["nombre"]; ?></td>
                    </tr>
     
                <?php endwhile; ?>
                </tbody>
            </table>
        </div>
    <?php endif ?>
     
    </body>
    </html>

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    avril 2005
    Messages
    168
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : avril 2005
    Messages : 168
    Points : 67
    Points
    67

    Par défaut

    Merci pour les réponses.
    Je mets le code en entier avec les corrections indiquées.
    J'ai une erreur
    Parse error: syntax error, unexpected 'endwhile' (T_ENDWHILE)
    je continue à chercher.

    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
     
    html>
    	<head>
    	<title>nombre et type de vestiges par opération</title>
    	<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
     
    <!-- Latest compiled and minified CSS -->
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
     
    <!-- jQuery library -->
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
     
    <!-- Latest compiled JavaScript -->
    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
     
    <link rel="stylesheet" type="text/css" href=".\styles_md.css" media="screen" />
    	</head>
     
    	<body class="imagemenu">
    <?php
     
    //prolongation session
    session_start() ;
    //importation config.php
    require('./require/config.php');
     
    /*requête pour rechercher l'opération dans la table nb_fait_opération*/
    $sql = "select * from tables_psi.nb_fait_operation where code_tranche = '$_POST[code_tranche]' ";
     
    //ok ci-dessous ca fonctionne
    $marequete = pg_query(pg_connect("host=$serveur port=$port dbname=$base user=$_SESSION[identifiant] password=$_SESSION[mot_de_passe]") 
    , $sql) ;
     
    if (!isset($marequete)) 
    	{
    		echo "le code tranche n'existe pas" ;
    }
    ELSE
     
    //affichage des champs de la table nb_fait_operation
     
    if (isset($_POST['submit']))
    	{		
    ?>					
    <div name='tableau'>
    	<table name="tableau_nbfaitop" >
    	 <thead>
    	  <tr>
    		<th>code_tranche</th>
    		<th>nom_operation</th>
    		<th>interpretation</th>
    		<th>nombre</th>
    	  </tr>
    	 </thead>
    	<?php while ($ligne = pg_fetch_array($marequete)) :
    		{
    	?>
    	 <tbody>
    	  <tr>
    		<td><?php echo $ligne["code_tranche"] ;?></td>
    		<td><?php echo $ligne["nomope"] ;?></td> 
    		<td><?php echo $ligne["interpret"] ; ?></td>
    		<td><?php echo $ligne["nombre"] ;?></td>
    	  </tr>
    	  <?php endwhile ;?>
    	 </tbody>
    	</table>
    </div>
    <?php					
    		}
    	}	
    ?>
     
    <div class="doc">
    <form action="nbfaitop1.php" method="POST" >
    	<h4>nombre et type de vestiges par opération</h4>
    	<h5 class = "alert alert-warning">Saisir le code tranche de l'opération</h5>
    	<p class="psga">code tranche:</p><input type="text" name="code_tranche" class = "alert alert-info">
    	<input type="submit" class = "alert alert-info" name="submit" value="rechercher"></p>
     
    </form>
    </div>
     
    	</body>
    </html>

  5. #5
    Modérateur

    Avatar de MaitrePylos
    Homme Profil pro
    DBA & Dev PHP
    Inscrit en
    juin 2005
    Messages
    4 980
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : DBA & Dev PHP
    Secteur : Service public

    Informations forums :
    Inscription : juin 2005
    Messages : 4 980
    Points : 11 114
    Points
    11 114

    Par défaut

    code pas propre :

    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
     
    <html>
    <head>
        <title>nombre et type de vestiges par opération</title>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
     
        <!-- Latest compiled and minified CSS -->
        <link rel="stylesheet"
              href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
     
        <!-- jQuery library -->
        <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
     
        <!-- Latest compiled JavaScript -->
        <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
     
        <link rel="stylesheet" type="text/css" href=".\styles_md.css" media="screen"/>
    </head>
     
    <body class="imagemenu">
    <?php
     
    //prolongation session
    session_start();
    //importation config.php
    require('./require/config.php');
     
    /*requête pour rechercher l'opération dans la table nb_fait_opération*/
    $sql = "select * from tables_psi.nb_fait_operation where code_tranche = '$_POST[code_tranche]' ";
     
    //ok ci-dessous ca fonctionne
    $marequete = pg_query(pg_connect("host=$serveur port=$port dbname=$base user=$_SESSION[identifiant] password=$_SESSION[mot_de_passe]")
        , $sql);
    ?>
    <?php if (!isset($marequete)): ?>
        le code tranche n'existe pas
    <?php else : ?>
        <?php if (isset($_POST['submit'])): ?>
            <div name='tableau'>
                <table name="tableau_nbfaitop">
                    <thead>
                    <tr>
                        <th>code_tranche</th>
                        <th>nom_operation</th>
                        <th>interpretation</th>
                        <th>nombre</th>
                    </tr>
                    </thead>
                    <?php while ($ligne = pg_fetch_array($marequete)): ?>
                    <tbody>
                    <tr>
                        <td><?php echo $ligne["code_tranche"]; ?></td>
                        <td><?php echo $ligne["nomope"]; ?></td>
                        <td><?php echo $ligne["interpret"]; ?></td>
                        <td><?php echo $ligne["nombre"]; ?></td>
                    </tr>
                    <?php endwhile; ?>
                    </tbody>
                </table>
            </div>
        <?php endif; ?>
    <?php endif; ?>
     
    <div class="doc">
        <form action="nbfaitop1.php" method="POST">
            <h4>nombre et type de vestiges par opération</h4>
            <h5 class="alert alert-warning">Saisir le code tranche de l'opération</h5>
            <p class="psga">code tranche:</p><input type="text" name="code_tranche"
                                                    class="alert alert-info">
            <input type="submit" class="alert alert-info" name="submit" value="rechercher"></p>
     
        </form>
    </div>
     
    </body>
    </html>
     
     
    //affichage des champs de la table nb_fait_operation
     
    if (isset($_POST['submit']))
    echo "";
     
    //while ($ligne = pg_fetch_array($marequete))
    //{
    ?>

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    avril 2005
    Messages
    168
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : avril 2005
    Messages : 168
    Points : 67
    Points
    67

    Par défaut

    oui je voyais ça : faut que je reprenne, y'a des { en trop...entre autres...
    je nettoie donc...

  7. #7
    Modérateur

    Avatar de MaitrePylos
    Homme Profil pro
    DBA & Dev PHP
    Inscrit en
    juin 2005
    Messages
    4 980
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : DBA & Dev PHP
    Secteur : Service public

    Informations forums :
    Inscription : juin 2005
    Messages : 4 980
    Points : 11 114
    Points
    11 114

    Par défaut

    c'est ce que j'ai fais

  8. #8
    Membre du Club
    Profil pro
    Inscrit en
    avril 2005
    Messages
    168
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : avril 2005
    Messages : 168
    Points : 67
    Points
    67

    Par défaut

    comment j'ai pu oublié le endwhile...

    Il n'a pas voulu des
    <?php endif ;?>
    Une fois effacés et code nettoyé, j'ai un tableau correct.
    Merci

    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
     
    *sans le début de la page*
     
    if (!isset($marequete)) 
    	{
    		echo "le code tranche n'existe pas" ;
    }
    ELSE
     
    //affichage des champs de la table nb_fait_operation
     
    if (isset($_POST['submit']))
     
    ?>					
    <div name='tableau'>
    	<table name="tableau_nbfaitop" >
    	 <thead>
    	  <tr>
    		<th>code_tranche</th>
    		<th>nom_operation</th>
    		<th>interpretation</th>
    		<th>nombre</th>
    	  </tr>
    	  </thead>
    	  <?php while ($ligne = pg_fetch_array($marequete)) : ?>
    	 <tbody>
    	  <tr>
    		<td><?php echo $ligne["code_tranche"] ;?></td>
    		<td><?php echo $ligne["nomope"] ;?></td> 
    		<td><?php echo $ligne["interpret"] ; ?></td>
    		<td><?php echo $ligne["nombre"] ;?></td>
    	  </tr>
    	  <?php endwhile; ?>
    	 </tbody>
    	</table>
    </div>
     
     
    <div class="doc">
    <form action="nbfaitop1.php" method="POST" >
    	<h4>nombre et type de vestiges par opération</h4>
    	<h5 class = "alert alert-warning">Saisir le code tranche de l'opération</h5>
    	<p class="psga">code tranche:</p><input type="text" name="code_tranche" class = "alert alert-info">
    	<input type="submit" class = "alert alert-info" name="submit" value="rechercher"></p>
     
    </form>
    </div>
     
    	</body>
    </html>

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

Discussions similaires

  1. Récupérer des données issues d'une requête
    Par flavors dans le forum Langage
    Réponses: 8
    Dernier message: 22/07/2015, 17h07
  2. Réponses: 2
    Dernier message: 20/03/2015, 16h51
  3. Récupération des données issues d'une requête
    Par TeoSitran dans le forum Requêtes et SQL.
    Réponses: 8
    Dernier message: 29/04/2014, 09h36
  4. [PHP 5.3] Récupérer des données issues d'une requête http GET
    Par Pierrea4564 dans le forum Syntaxe
    Réponses: 2
    Dernier message: 24/09/2013, 08h15
  5. Réponses: 4
    Dernier message: 30/03/2007, 10h10

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