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 :

Retrier les données MySQL après affichage [MySQL]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre extrêmement actif Avatar de ledisciple
    Homme Profil pro
    observateur de nuage niveau 2.3
    Inscrit en
    Août 2008
    Messages
    860
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : observateur de nuage niveau 2.3

    Informations forums :
    Inscription : Août 2008
    Messages : 860
    Par défaut Retrier les données MySQL après affichage
    Bonjour !!

    Je suis désolé, mais j'ai pas réussi à trouver un cours ou un tuto sur ce sujet.

    Voila, j'ai vu sur mysql myadmni, que l'on pouvait trier les données après affichage en cliquant sur l'un des champs, après affichage des données. j'espère que vous réussissez à me suivre ...

    j'ai réussi à votre que c'était un lien url paramétrer, c'est à dire qu'une requete sql était contenu dans le lien.

    J'aimerai savoir s'il y avait un autre code à mettre sur la page et comment paramétrer le lien pour qu'il puisse avec mon site (local uniquement)

    http://127.0.0.1/football/resultat_par_equipe.php?lang=fr-utf-8&server=1&collation_connection=utf8_general_ci&db=football&table=equipes&pos=0&session_max_rows=30&disp_direction=horizontal&repeat_cells=100&dontlimitchars=0&sql_query=SELECT+%2A+FROM+%60equipes%60++ORDER+BY+%60num_equipe%60+

    voila, merci pour votre réponse ...

  2. #2
    Expert éminent
    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 815
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 815
    Billets dans le blog
    14
    Par défaut
    Beaucoup trop lourd l'URL !

    il suffit que tu passes un paramètre dans l'URL du genre &action=tri&colonne=[le nom de colonne du tri selon le lien].

    Du coup dans ton code PHP tu testes la variable $action ; si elle a pour valeur 'tri', tu récupères la valeur de la variable $colonne et tu paramètres la requête SQL à soumettre pour refaire l'affichage des données triées selon cette colonne.
    Philippe Leménager. Ingénieur d'étude à l'École Nationale Supérieure de Formation de l'Enseignement Agricole, en retraite... mais toujours Autoentrepreneur à l'occasion.
    Mon ancien blog sur la conception des BDD, le langage SQL, le PHP... et mon nouveau blog sur les mêmes sujets.
    « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
    À la maison comme au bureau, j'utilise la suite Linux Mageïa !

  3. #3
    Membre extrêmement actif Avatar de ledisciple
    Homme Profil pro
    observateur de nuage niveau 2.3
    Inscrit en
    Août 2008
    Messages
    860
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : observateur de nuage niveau 2.3

    Informations forums :
    Inscription : Août 2008
    Messages : 860
    Par défaut
    en gros ça donne

    resultat_par_equipe.php?&action=tri&colonne=num_equipe&sql_query=SELECT+%2A+FROM+%60equipes%60++ORDER+BY+%60num_equipe%60+

    désolé, je ne suis que débutant ...

  4. #4
    Expert éminent
    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 815
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 815
    Billets dans le blog
    14
    Par défaut
    Ce que je voulais dire c'est que dans ton lien tu mets seulement : resultat_par_equipe.php?&action=tri&colonne=num_equipe

    Ensuite c'est le code de la page resultat_par_equipe.php qui teste la variable $action :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    if($action = 'tri')
    {
      $sql = "SELECT *
        FROM equipes
        ORDER BY '$colonne'";
    }
    else
    {
      $sql = "SELECT *
        FROM equipes";
    }
    Philippe Leménager. Ingénieur d'étude à l'École Nationale Supérieure de Formation de l'Enseignement Agricole, en retraite... mais toujours Autoentrepreneur à l'occasion.
    Mon ancien blog sur la conception des BDD, le langage SQL, le PHP... et mon nouveau blog sur les mêmes sujets.
    « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
    À la maison comme au bureau, j'utilise la suite Linux Mageïa !

  5. #5
    Membre extrêmement actif Avatar de ledisciple
    Homme Profil pro
    observateur de nuage niveau 2.3
    Inscrit en
    Août 2008
    Messages
    860
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : observateur de nuage niveau 2.3

    Informations forums :
    Inscription : Août 2008
    Messages : 860
    Par défaut
    mais il faut définir la variage $colonne en faisant tournée une requête sql dans la page php, car il me retourne que la variable n'est pas définit ...???

    pourtant, la requete est définit dans le if, je ne sais pas ce qu'il faut rajouter un en plus dans la fonction $colonne pour que ça fonctionne

  6. #6
    Membre extrêmement actif Avatar de ledisciple
    Homme Profil pro
    observateur de nuage niveau 2.3
    Inscrit en
    Août 2008
    Messages
    860
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : observateur de nuage niveau 2.3

    Informations forums :
    Inscription : Août 2008
    Messages : 860
    Par défaut
    Citation Envoyé par CinePhil Voir le message
    Beaucoup trop lourd l'URL !

    il suffit que tu passes un paramètre dans l'URL du genre &action=tri&colonne=[le nom de colonne du tri selon le lien].

    Du coup dans ton code PHP tu testes la variable $action ; si elle a pour valeur 'tri', tu récupères la valeur de la variable $colonne et tu paramètres la requête SQL à soumettre pour refaire l'affichage des données triées selon cette colonne.
    Je veux bien récupéré la variabble $colonne sur ma page php, mais je fais comment pour la récupérer?
    merci pour votre réponse

  7. #7
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Les variables passées par l'URL sont reprises dans $_GET
    ie :
    index.php?toto=12345
    $_GET['toto'] vaut 12345
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  8. #8
    Membre extrêmement actif Avatar de ledisciple
    Homme Profil pro
    observateur de nuage niveau 2.3
    Inscrit en
    Août 2008
    Messages
    860
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : observateur de nuage niveau 2.3

    Informations forums :
    Inscription : Août 2008
    Messages : 860
    Par défaut
    en gros mon code sera?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    $_GET['colonne'] ou $_GET['$colonne']
     
    if($action = 'tri')
    {
      $sql = "SELECT *
        FROM equipes
        ORDER BY '$colonne'";
    }
    else
    {
      $sql = "SELECT *
        FROM equipes";
    }

  9. #9
    Membre extrêmement actif Avatar de ledisciple
    Homme Profil pro
    observateur de nuage niveau 2.3
    Inscrit en
    Août 2008
    Messages
    860
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : observateur de nuage niveau 2.3

    Informations forums :
    Inscription : Août 2008
    Messages : 860
    Par défaut
    c'est bon, j'ai réussi, ce que je voulais faire !!

    merci a tous pour votre aide si précieuse

    pour info

    ma première page
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <a href="statistiques.php?categorie_rencontre=Seniors&debut_saison=2008-07-01&fin_saison=2009-06-31">Seniors 2008/2009 </a>
    <br>
    <a href="statistiques.php?categorie_rencontre=15 ans&debut_saison=2008-07-01&fin_saison=2009-06-31">15 ans 2008/2009</a>
    la page de résultat
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    <?
    $categorie_rencontre = $_GET["categorie_rencontre"];
    $debut_saison=$_GET["debut_saison"];
    $fin_saison=$_GET["fin_saison"];
    ?>
    <p class="titre_page">Les Statistiques 2008/2009<? echo " : $categorie_rencontre"?> </p>
     
     
    ...
     
    <?php 
     
    $db = mysql_connect('localhost', 'root', ''); 
     
    mysql_select_db('football',$db); 
     
     
    $sql_lieu = "select lieu_rencontre,count(lieu_rencontre) from rencontres WHERE categorie_rencontre = '$categorie_rencontre'  and date_rencontre >'$debut_saison' and date_rencontre<'$fin_saison'  and (commentaire_rencontre) <> \"Match non joué\" group by lieu_rencontre";
     
    $req = mysql_query($sql_lieu) or die('Erreur SQL !<br>'.$sql_lieu.'<br>'.mysql_error()); 
     
    while($data = mysql_fetch_assoc($req)) 
        { 
     
    echo '<table align="center" width="96%">
    <tr>	<td class="titre_col_tableaux" width="16%">'.$data['lieu_rencontre'].'</td>
    		<td class="titre_col_tableaux" width="16%">'.$data['count(lieu_rencontre)'].' déplacement(s)</td>
    
    </tr>
    </table>'; 
    }
     
    ?>

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 05/03/2013, 10h09
  2. imprter les données mysql vers format CVS
    Par ghyosmik dans le forum Débuter
    Réponses: 4
    Dernier message: 18/03/2008, 14h40
  3. [MySQL] récupérer les données mysql dans un formulaire
    Par cali62100 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 11/04/2007, 14h17
  4. Caractères spéciaux dans la base de données Mysql après sauvegarde.
    Par Alexandrebox dans le forum Administration
    Réponses: 11
    Dernier message: 15/02/2007, 06h32
  5. Recueillir les données mysql en vb 2005!
    Par jnbrunet dans le forum VB.NET
    Réponses: 4
    Dernier message: 13/02/2007, 19h46

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