par
Ryle » 25 juin 2015, 12:12
Les super variables GET et POST te permettent de récupérer les données transmises respectivement via l'url de la page ou via un formulaire.
Historiquement, il suffisait d'utiliser une variable $tri qui était alimentée automatiquement par les valeurs reçues en get, ou en post, ou via un cookie, ... bref difficile de savoir ce que $tri allait contenir et en terme de sécurité, c'était plutôt moyen (on pouvait facilement bypasser une donnée en session en mettant le bon nom de variable dans l'url).
Du coup les versions de php qui ont suivi ont obligé les développeurs à dire explicitement d'où provenait la donnée qu'il souhaitaient utiliser. Ainsi $tri ne contenait rien (et n'était d'ailleurs pas définie automatiquement) et c'est à toi de dire que tu veux récupérer une info provenant de l'url de la page :
$tri = $_GET['tri'];
Sauf que cette info n'est pas toujours présente dans l'url (par exemple quand tu ouvres la page pour le première fois), il convient donc de vérifier si celle-ci existe bel et bien avant de l'utiliser
if (isSet($_GET['tri']))
$tri = $_GET['tri'];
else
$tri = 'date_up'; // si rien n'est passé dans l'url tu peux utiliser une valeur par défaut
Bref, tout ça pour dire qu'il te faut donc récupérer l'info envoyée par l'url (ou la valeur par défaut), écrire la requête que tu veux exécuter avec le "order by" qui va bien, exécuter celle-ci et enfin boucler sur les résultats retournés pour les afficher

Les super variables GET et POST te permettent de récupérer les données transmises respectivement via l'url de la page ou via un formulaire.
Historiquement, il suffisait d'utiliser une variable $tri qui était alimentée automatiquement par les valeurs reçues en get, ou en post, ou via un cookie, ... bref difficile de savoir ce que $tri allait contenir et en terme de sécurité, c'était plutôt moyen (on pouvait facilement bypasser une donnée en session en mettant le bon nom de variable dans l'url).
Du coup les versions de php qui ont suivi ont obligé les développeurs à dire explicitement d'où provenait la donnée qu'il souhaitaient utiliser. Ainsi $tri ne contenait rien (et n'était d'ailleurs pas définie automatiquement) et c'est à toi de dire que tu veux récupérer une info provenant de l'url de la page :
[php]$tri = $_GET['tri'];[/php]Sauf que cette info n'est pas toujours présente dans l'url (par exemple quand tu ouvres la page pour le première fois), il convient donc de vérifier si celle-ci existe bel et bien avant de l'utiliser
[php]if (isSet($_GET['tri']))
$tri = $_GET['tri'];
else
$tri = 'date_up'; // si rien n'est passé dans l'url tu peux utiliser une valeur par défaut[/php]
Bref, tout ça pour dire qu'il te faut donc récupérer l'info envoyée par l'url (ou la valeur par défaut), écrire la requête que tu veux exécuter avec le "order by" qui va bien, exécuter celle-ci et enfin boucler sur les résultats retournés pour les afficher :)