Fonction trier avec le xhtml, php, phpmyadmin

Fermé
alexbigfoug - 6 mars 2009 à 21:43
 alexbigfoug - 12 mars 2009 à 23:52
Bonjour à toutes et à tous!!

J'ai de nouveau un soucis avec mon projet de site^^

Je veux utiliser une liste déroulante pour pouvoir trier mon tableau.

Par exemple, dans ma liste déroulante je sélectionnes le "Prix" je clic sur "trier par" et hop

mon tableau est trier du plus petit prix au plus grand...

Bon je vais vous faire quelque screen pour que vous compreniez ce que je veux faire^^.

Mon code php et xhtml de la fonction trier par

https://imageshack.com/

Mon code php et xhtml du tableau d'affichage des produits

https://imageshack.com/

Affichage à l'écran

https://imageshack.com/

Voilà j'espères que vous allez pouvoir me donner un petit coup de puce^^

Si vous avez besoin de plus de renseignement, je suis là^^
A voir également:

11 réponses

bissdebrazza Messages postés 2065 Date d'inscription vendredi 29 juin 2007 Statut Contributeur Dernière intervention 7 décembre 2017 712
7 mars 2009 à 01:25
Salut!
Regarde ça,je crois que ça va t'aider au lieu d'envoyer par formulaire!
Il est téléchargeable ici
Bonne soirée!

P/S:ceci n'est qu'une idée!!
0
Oui, l'idée est bonne.

mais je ne comprends pas le code avec les commentaire en anglais...

Si toute fois tu aurais la même chose en français je suis preneur^^
0
bissdebrazza Messages postés 2065 Date d'inscription vendredi 29 juin 2007 Statut Contributeur Dernière intervention 7 décembre 2017 712
7 mars 2009 à 14:24
ok!
Informatique=anglais!

Voici une version traduite du lien:
http://translate.google.fr/...

Tu cliques ensuite sur tableau widgets(à gauche dans le menu) ensuite sur la page des tableaux tu vas sur ce tableau: Tableau widget - trier le tableau avec entête fixe

Attention!!!:le français n'est pas correct,mais assez compréhensif!
0
Utilisateur anonyme
7 mars 2009 à 14:52
Salut,

A mon avis le problème vient du fait que tu ne test pas systématiquement si ta variable $_POST["tri"] est définie. D'ou l'erreur "Undefined index tri ..." qui apparait je suppose lorsque l'utilisateur n'a pas encore choisi d'option de tri.

Je te suggère d'ajouter la condition suivante dans ton code lorsque tu récupères la variable tri passée par POST :

if(isset($_POST["tri"]))
{
$tri = $_POST["tri"];
}
else
{
$tri = "Référence";
}

De cette manière, lorsque l'utilisateur arrive sur la page, le tableau est trié par référence par défaut, et lorsqu'il valide une option de tri, cette dernière est prise en compte.

C'est bien ce que tu veux ?
0
Avec ton code emmanuel j'obtiens ceci:

https://imageshack.com/

Donc encore un petit soucis...

bissdebraza merci pour la traduction^^, j'étudie d'abord la solution d'emmanuel qui me semble plus aproprié à mon niveau, et ensuite la tienne
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Utilisateur anonyme
7 mars 2009 à 16:07
C'est le fait qu'il t'affiche "Resource id #6" qui te gène ?

C'est que tu as oublié d'enlever une trace, ce n'est pas une erreur :

echo $req_tri;

Commentes cette ligne de la manière suivante :

// echo $req_tri;

Et tu n'auras plus cette trace.
0
Oui c'est bon ça a disparus, par contre cela ne marches pas...Je sélectionne le "prix" par exemple mais rien ne se passe. La page se charges mais après rien...
0
alexbigfoug
11 mars 2009 à 18:00
Up!!! je suis toujours bloquer..

Est ce que le problème ne viendrais pas parce que ma table s'affiche à l'aide d'une autre rêquete...
0
bissdebrazza Messages postés 2065 Date d'inscription vendredi 29 juin 2007 Statut Contributeur Dernière intervention 7 décembre 2017 712
11 mars 2009 à 18:07
as tu regardé ma solution?
0
alexbigfoug
11 mars 2009 à 22:45
Oui, elle est trop complexe pour moi^^

J'ai vu du javascript dedans et comme je ne connais pas, je ne souhaite pas prendre ta solution...

Je ne pourrais pas modifier un script dont je ne connais pas le fonctionnenment...

Une autre idée sinon^^
0
[o.o]REplay Messages postés 357 Date d'inscription vendredi 20 juin 2008 Statut Membre Dernière intervention 20 juillet 2009 28
12 mars 2009 à 02:55
Ma solution:

Tu mets un lien généré dans chaque titre de colonne.

exemple:

pour la colonne prix, le lien sera du genre: tapage.php/?name=prix&order=ASC

quand ta page est rechargée, tu analyses la colonne à trier ( ici prix ), regardes l'order by (asc) et tu génère ta requête sql en fonction de ça (select .... order by prix asc).

Après ça ta colonne prix doit avoir un lien du type : tapage.php/?name=prix&order=DESC,
donc un if avant le titre de chaque colonne :)

Ya bon?
0
alexbigfoug
12 mars 2009 à 23:52
Je ne vois pas très bien ce que tu veux dire...aurais-tu un exemple concret, ou un site web par lequel je serai guidé...
0