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 :

Un problème de numérotation d'un résultat parmi tant d'autres


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 45
    Par défaut Un problème de numérotation d'un résultat parmi tant d'autres
    Bonjour à tous...

    Je vous explique mon problème,

    en fait j'ai une requète de ce type :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    $sql = "select ecoles.id, ecoles.nom_ecole, ecoles.url_site, ecoles.adresse1, ecoles.adresse2, ecoles.codepostal, ecoles.ville FROM ecoles WHERE ecoles.adresse1 IS NOT NULL" ;
    $result1 = mysql_query($sql) ;
    et j'affiche ensuite la requète de cette manière (je simplifie l'affichage) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    $numresultat=0;
    while($row = mysql_fetch_assoc($result1)){
    echo $numresultat++.' - '.$row["nom_ecole"];
    }
    ce qui m'affiche donc par exemple :

    1 - Ecole Jean Masset
    2 - Ecole Leo Lagrange
    3 - Ecole Truc Machin Chose ...


    Ce que je souhaiterais, c'est retourner le numéro du résultat d'une des écoles si je l'appelle par son id dans la barre d'adresse.

    Exemple : J'appelle dans l'adresse ecoles?id=6, L'école Léo Lagrange ayant l'id numéro 6 dans la base de donnéen, la page me retourne le chiffre 2

    J'espère que j'ai été clair

    Merci d'avance pour votre aide

  2. #2
    Membre éclairé
    Avatar de buzzkaido
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2004
    Messages
    821
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2004
    Messages : 821
    Par défaut
    Essaie comme ça :



    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    while($row = mysql_fetch_assoc($result1))
    {
        echo $row["id"].' - '.$row["nom_ecole"];
    }

    Car l'ID dans ta base de données n'a rien a voir avec ta variable numresultat

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 45
    Par défaut
    justement je peux pas faire comme ça. Il faut absolument que je les numérote de 0 à ...
    Les ID ne se suivent pas, je dois absolument les numéroter de cette manière

  4. #4
    Membre chevronné Avatar de dj-julio
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    745
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Finistère (Bretagne)

    Informations forums :
    Inscription : Décembre 2005
    Messages : 745
    Par défaut
    ce numéro résultat est généré en s'incrémentant à chaque fois qu'il passe dans ta boucle while.

    pourquoi ne mets-tu pas ce numéro dans la base de données ?
    Ce serait plus simple, et surtout, tu serais toujours sur qu'il y ai une vraie correspondance entre le numéro résultat et l'id de l'école.

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 45
    Par défaut
    Je ne peux pas, car dans cette requète, il y a que les ecoles avec adresses. Et moi dans ma base j'ai aussi des écoles sans adresses. C'est pour ça que je n'ai que cette solution...

  6. #6
    Membre chevronné Avatar de dj-julio
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    745
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Finistère (Bretagne)

    Informations forums :
    Inscription : Décembre 2005
    Messages : 745
    Par défaut
    ahhh oké

    je n'avais pas fais attention.

    Alors tu peux faire quelque chose du genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $sql = "select ecoles.id, ecoles.nom_ecole, ecoles.url_site, ecoles.adresse1, ecoles.adresse2, ecoles.codepostal, ecoles.ville FROM ecoles WHERE ecoles.adresse1 IS NOT NULL" ;
    $result1 = mysql_query($sql) ;
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    $numresultat=0;
    $idCherche=$_GET['id'];
    while($row = mysql_fetch_assoc($result1)){
     $numresultat++;
         if($idCherche==$numresultat)  {
            echo $numresultat.' - '.$row["nom_ecole"];
         }
    }

Discussions similaires

  1. tracer une courbe parmi tant d'autres
    Par doinier dans le forum MATLAB
    Réponses: 6
    Dernier message: 07/10/2014, 10h45
  2. Réponses: 8
    Dernier message: 01/04/2011, 11h04
  3. Réponses: 3
    Dernier message: 10/10/2008, 21h27
  4. exécuter une fonction parmi tant d'autres
    Par chrix10.2 dans le forum Général Python
    Réponses: 4
    Dernier message: 29/12/2006, 09h39
  5. Problème de numérotation de paragraphes
    Par Jenny_ dans le forum Mise en forme
    Réponses: 4
    Dernier message: 11/05/2006, 13h56

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