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 :

Requête pour ressortir des resultats


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de spawns
    Homme Profil pro
    Inscrit en
    Juillet 2004
    Messages
    558
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 558
    Par défaut Requête pour ressortir des resultats
    Salut à tous,
    j'aurai besoin de votre aide pour écrire une requête afin de sortir les résultats d'une table.
    la table :
    Id | Departement | Adresse ....
    1 | 33| 12 rue...
    1 | 40| 181 rue...
    1 | 75| 15 rue...
    1 | 33| 16 rue...
    1 | 40| 127 rue...

    il faut que je sorte un résultat par département mais avec chaque adresse bien sur
    Exemple :
    Département 33 :
    12 rue...
    16 rue...

    Département 40:
    181 rue...
    127 rue...

    j'ai essayé ce genre de code mais cela ne fonctionne pas, cela ne me sort qu'une adresse par département.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    $requete = "SELECT * FROM agences GROUP BY dep";
    $ret = $mysqli->query($requete);
     
    while($data = mysqli_fetch_array($ret)){
    $depart =	 "$data[dep]";
    $city = array("$data[adresse]");
    echo $depart.'<br />';
    print_r($city);
    echo '<br />';
    Merci d'avance votre aide
    Cdt

  2. #2
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par défaut
    Tu peux utiliser GROUP CONCAT.
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  3. #3
    Membre éclairé Avatar de spawns
    Homme Profil pro
    Inscrit en
    Juillet 2004
    Messages
    558
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 558
    Par défaut
    Bonjour et merci pour cette info,
    peux tu me donner un exemple avec ma table ?

  4. #4
    Membre Expert
    Avatar de skeud
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2011
    Messages
    1 091
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2011
    Messages : 1 091
    Billets dans le blog
    1
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT * from table order by departement,adresse
    Ensuite tu boucles dessus de cette manière:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    $dep = 0
    while ($enreg = mysqli_fetch_assoc($res))
    {
      if ($dep != $enreg["Departement"])
      {
        echo "Departement ".$enreg["Departement"];
        $dep = $enreg["Departement"];
      }
      echo $enreg["adresse"];
    }
    Normalement, ça devrait fonctionner, à toi d'adapter ta lecture à ton appli ensuite .

  5. #5
    Membre éclairé Avatar de spawns
    Homme Profil pro
    Inscrit en
    Juillet 2004
    Messages
    558
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 558
    Par défaut
    bonjour, et merci pour ta réponse .
    le problème c'est que je dois récupérer ce listing (departement+adresse) afin
    de les afficher à des endroits différents de la page et pas les un en dessous des autres.

    Comment faire à ce moment la ?

  6. #6
    Membre Expert
    Avatar de skeud
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2011
    Messages
    1 091
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2011
    Messages : 1 091
    Billets dans le blog
    1
    Par défaut
    Tu créé un tableau avec les résultat de la requete, que tu utiliseras dans toute ta page. Par exemple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    $dep = 0
    $tableauDep = array();
    $iterator = 0;
    while ($enreg = mysqli_fetch_assoc($res)){
      if ($dep != $enreg["Departement"]){
        $tableauDep[$enreg["departement"]] = array();
        $iterator = 0;
        $dep = $enreg["Departement"];
      }
      $tableauDep[$enreg["departement"]][$iterator] = $enreg["adresse"];
      $iterator++;
    }
    Dans ton tableau tu auras donc:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    array
    {
      "93" => array
       {
          0 => "18 rue de ..."
          1 => "19 rue de ..."
       }
      "64" => array
       {
          0 => "15 rue de ..."
          1 => "16 rue de ..."
       }
      ...
    }

Discussions similaires

  1. Réponses: 7
    Dernier message: 22/08/2007, 11h49
  2. Requête pour extraire des départements
    Par Ardechoise dans le forum Requêtes et SQL.
    Réponses: 3
    Dernier message: 27/04/2007, 11h20
  3. Réponses: 5
    Dernier message: 23/02/2007, 09h04
  4. Besoin d'aide pour afficher des resultats proprement
    Par zx10 dans le forum VB 6 et antérieur
    Réponses: 6
    Dernier message: 27/11/2006, 16h34
  5. probleme de requete multi table pour exclure des resultats
    Par voilabad dans le forum Requêtes
    Réponses: 7
    Dernier message: 05/05/2006, 08h49

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