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 :

[pg_fetch_assoc] Impossible d'afficher les résultats d'un Select


Sujet :

PHP & Base de données

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Février 2008
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 5
    Points : 4
    Points
    4
    Par défaut [pg_fetch_assoc] Impossible d'afficher les résultats d'un Select
    Bonjour,

    cela fait plusieurs jours que je cherche sur différents forum et je ne trouve pas l'explication à mon problème.
    Je fais une requête sur ma base pour remonter les données d'un tableau sur un page à travers 3 colonnes.
    Par la suite, j’associerai l'ID à une checkbox pour sortir sur une autre page un requête d'effacement.

    Voici le script qui fonctionne au final :

    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
     
    <html>
    		<head>
    		<meta http-equiv="Content-type" content="text/html; charset=utf-8" />
    		</head>
    			<body> 
    <form method='POST' action='supprimer.php'>
    <table width="685" align="center"border="1">
    <tr align="center" bgcolor="#aacc19">
    <td width="20%"><font face="comic sans ms"><b>Nom</b></font></td>
    <td width="20%"><font face="comic sans ms"><b>Prenom</b></font></td>
    <td width="35%"><font face="comic sans ms"><b>Choix</b></font> </td>
    <font face="comic sans ms"><b>Supprimer</b></font></td>
    </tr>
     
    <?php
     
    	//Connection à la base ou sortie si échec
     
    	$db = pg_connect("host=127.0.0.1 port=5432 dbname=mabase user=postgres password=pwd") or die('Follow the white rabbit : ' . pg_last_error());
     
     
     
    	// Lancement de la requête
     
    		$query = 'SELECT * FROM "GlobalIntervenant"';
    		$result = pg_query($db, $query) or die('Follow the white rabbit : ' . pg_last_error());
     
     
    	// Sortie du résultat en tableau	
     
    			/*$data = pg_num_rows($result);
    			if ($data == 0)
    			{
    				echo '<tr><td colspan="2">';
    				echo 'Aucune entrée trouvée!</td></tr>';
    			}
    			*/
    			$data = pg_fetch_all($result);
     
    			foreach($data as $row)			
    			{
    			echo "<tr>";
    			echo "<td>".$row['Nom']."</td>";
    			echo "<td>".$row['Prenom']."</td>";
    			echo "<td>".$row['ID']."</td>";
    			echo "</tr>";
    			}
     
     
    	// Libère le résultat
     
    		pg_free_result($result);
     
            // Ferme la connexion
     
    		pg_close($db);
     
     
    ?>
    <input accesskey="S" name="Supprimer" value="Supprimer" type="submit">
    </form>
    </table>
    </body> 
    			</html>
    Maintenant j'aimerais comprendre pourquoi lorsque j'utilise : while ($data = pg_fetch_assoc($result)); (sans le foreach derrière et le $row dans la sortie remplacé par $data), rien ne s'affiche.
    J'ai trouvé pas mal d'exemple de requête rédigée avec cette commande qui ont l'ai de fonctionner ailleurs mais pas sur mon projet :/

    En faisant un var_dump de cette requête, cela remonte null.
    Lorsque j'enlève le while, je n'ai que le premier row (ce qui est normal si je me reporte à la documentation.

    Si quelqu'un peut m'expliquer ce qui pêche, je suis preneur...

    Merci d'avance

  2. #2
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 372
    Points
    16 372
    Par défaut
    Tu dis utiliser while ($data = pg_fetch_assoc($result));. Avec le point virgule juste après le while ?
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

Discussions similaires

  1. [PDO] PDO et class pour la connexion : impossible d'afficher les résultats
    Par neovea dans le forum PHP & Base de données
    Réponses: 13
    Dernier message: 25/02/2013, 15h35
  2. Réponses: 7
    Dernier message: 18/01/2007, 16h03
  3. [MySQL] Afficher les résultats sur 3 colones et 2 lignes
    Par Meewix dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 31/10/2006, 00h14
  4. Réponses: 7
    Dernier message: 21/09/2006, 09h44
  5. [SQL] Afficher les résultats d'une requête sur plusieurs pages
    Par mealtone dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 07/09/2006, 14h20

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