Problème avec foreach

Résolu
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>
Configuration: Windows 2003 Internet Explorer 8.0

5 réponses

  1. 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>";
    }
    1. 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;
      }
      
      ?>
      1. 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 !!!!
        1. 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>