Problème avec foreach

Résolu/Fermé
kaisserr Messages postés 52 Date d'inscription lundi 6 juillet 2009 Statut Membre Dernière intervention 16 août 2011 - 26 juil. 2009 à 14:34
kaisserr Messages postés 52 Date d'inscription lundi 6 juillet 2009 Statut Membre Dernière intervention 16 août 2011 - 1 août 2009 à 10:39
Bonjour,
Alors voilà , j'ai une liste de mots que j'ai enregistrer dans ma base données et que je voulais les afficher avec un foreach , mais je sais pas pourkoi ca ne marche pas, voila mon code


$resultat = mysql_query('SELECT *FROM souscategorie ORDER BY `NOMCATEGORIE` ASC');
$categories = mysql_fetch_array($resultat);
?>

<div class="categorie">
<?php

foreach ($categories as $element){
echo $element;

}

?>
</div>

5 réponses

giheller Messages postés 1875 Date d'inscription dimanche 14 juin 2009 Statut Membre Dernière intervention 3 février 2024 142
26 juil. 2009 à 15:46
Bonjour,
c'est pas mal mais qu'est-ce qui ne marche pas.

$resultat = mysql_query('SELECT *FROM souscategorie ORDER BY `NOMCATEGORIE` ASC');
$categories = mysql_fetch_array($resultat);
?>

<div class="categorie">
<?php
// met ceci ici pour vérifier que la requête sql retourne quelqe chose
echo "<pre>";print_r($categories);echo "</pre>";

foreach ($categories as $element){
echo $element;

}

?>
</div>
0
kaisserr Messages postés 52 Date d'inscription lundi 6 juillet 2009 Statut Membre Dernière intervention 16 août 2011 3
26 juil. 2009 à 15:59
ouai j'ai testé mais je trouve qu'elle me retourne que la premiere categorie, je voulais boucler pour avoir l'ensemble et j'ai utilisé ceci :

$resultat = mysql_query('SELECT * FROM souscategorie ORDER BY `NOMCATEGORIE` ASC');
$categories = mysql_fetch_array($resultat);

foreach ( $categories as $element){
echo "<pre>";print_r($categories);echo "</pre>";

echo $element;
$categories = mysql_fetch_array($resultat);

}
mais ca ne marche pas du tout
j'ai essayé avec : foreach ( ( $categories = mysql_fetch_array($resultat) )as $element){
echo $element;
}
mais ca ne me donne rien aussi , je ne sais plus comment faire !!!!
0
avion-f16 Messages postés 19249 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 15 juin 2024 4 504
26 juil. 2009 à 16:18
Tu ne peux pas faire directement un foreach.
<?php
$resultat = mysql_query('SELECT *FROM souscategorie ORDER BY `NOMCATEGORIE` ASC');
while($data = mysql_fetch_assoc($resultat)){
    $categorie[] = $data;
}

echo '<div class="categorie">';

foreach ($categorie as $element) {
    echo $element;
}

?>
0
giheller Messages postés 1875 Date d'inscription dimanche 14 juin 2009 Statut Membre Dernière intervention 3 février 2024 142
26 juil. 2009 à 16:20
alors on essaie :

$resultat = mysql_query('SELECT *FROM souscategorie ORDER BY `NOMCATEGORIE` ASC');


// Vérification du résultat
// Ceci montre la requête envoyée à MySQL ainsi que l'erreur. Utile pour déboguer.
if (!$resultat) {
$message = "Requête invalide : " . mysql_error() . "\n";
$message .= "Requête complète : " . $query;
die($message);
}
$nblignes=mysql_num_rows($resultat);
for ($i=0;$i<$nblignes;$i++){
$ligne = mysql_fetch_row($result);
// et là en fonction de la colonne ex : col 4
echo "".$ligne[3]."<br>";
}
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
kaisserr Messages postés 52 Date d'inscription lundi 6 juillet 2009 Statut Membre Dernière intervention 16 août 2011 3
1 août 2009 à 10:39
merci beaucoup ,ça m'a vraiment aidé votre exemple.
0