PDO

Fermé
Mahandritiana Messages postés 14 Date d'inscription vendredi 28 novembre 2014 Statut Membre Dernière intervention 28 janvier 2015 - 28 nov. 2014 à 15:30
 Utilisateur anonyme - 29 nov. 2014 à 08:40
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

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 vendredi 28 novembre 2014 Statut Membre Dernière intervention 28 janvier 2015
29 nov. 2014 à 07:11
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
29 nov. 2014 à 08:40
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