PDO

Mahandritiana Messages postés 14 Date d'inscription   Statut Membre Dernière intervention   -  
 Utilisateur anonyme -
j'essaie d'utiliser la fonction (PDO::FETCH_ASSOC) venant de MySQL en PDO
c'est à dire, j'ai besoin de récuperer des données venant d'un tableau
et je ne trouve pas mon probleme dans mon source puisque rien ne s'affiche en vrai!!!


<?php
$hostdb = 'localhost';
$namedb = 'parcmfb';
$userdb = 'root';
$passdb = '';

try {
  $conn = new PDO("mysql:host=$hostdb; dbname=$namedb", $userdb, $passdb);
  $conn->exec("SET CHARACTER SET utf8");  

  $sql = "SELECT FournisseurID, FournisseurNIF, FournisseurNom, FournisseurAdresse, FournisseurTel, Observation FROM fournisseur Order by FournisseurID";
  $result = $conn->query($sql);

  if(!$result) {
            echo 'Impossible d\'afficher la liste de tous les fournisseurs';
		                }
		
		else
		{
			echo '<table width="200" border="1">
					<tr>
 					<th scope="col">FournisseurID</th>
					<th scope="col">FournisseurNIF</th>
					<th scope="col">FournisseurNom</th>
					<th scope="col">FournisseurAdresse</th>
					<th scope="col">FournisseurTel</th>
					<th scope="col">Observation</th>
					</tr>';
			
			while( $donnees=$resultat->fetch(PDO::FETCH_ASSOC) ;
			{
				echo '
  					<tr>
    					<td>'.$donnees['FournisseurID'].'</td>
   						<td>'.$donnees['FournisseurNIF'].'</td>
						<td>'.$donnees['FournisseurNom'].'</td>
   						<td>'.$donnees['FournisseurAdresse'].'</td>
						<td>'.$donnees['FournisseurTel'].'</td>
						<td>'.$donnees['Observation'].'</td>
  					</tr>
					';
			}
			echo '</table>';
		};

 

  $conn = null;
}
catch(PDOException $e) {
  echo $e->getMessage();
}
?>

2 réponses

Utilisateur anonyme
 
Bonjour

Première chose à faire : supprimer le point-virgule à la fin de cette ligne et ne pas oublier de refermer une parenthèse :
while( $donnees=$resultat->fetch(PDO::FETCH_ASSOC) ;

à remplacer par
while( $donnees=$resultat->fetch(PDO::FETCH_ASSOC)) 
1
Mahandritiana Messages postés 14 Date d'inscription   Statut Membre Dernière intervention  
 
toujours le même erreur " Fatal error: Call to a member function fetch() on a non-object in C:\wamp\www\SMI\fournisseur.php on line 30"
0
Utilisateur anonyme
 
Non,ce n'est plus la même erreur.
Le message te dit que tu appelles la fonction fetch sur quelque chose qui n'est pas un objet. Regarde sur quelle variable tu appelles cette fonction :

$result = $conn->query($sql);
...
while( $donnees=$resultat->fetch(PDO::FETCH_ASSOC))

Tu ne vois pas l'erreur ?
0