Tri ascendant et descendant des images
fhav
Messages postés
252
Date d'inscription
Statut
Membre
-
patachon -
patachon -
Bonjour,
j'ai une page ou j'affiche les images : exemple
ligne 1: img 1 img2 img3
Linge 2: img 4 img5 img6
....
mais les images sont groupé par famille, famille produit A famille produit B
Je veux faire de liens triez ascendent et descendant
si je clique ascendant il me les trie par famille. et vise versa.
mon problème n'est pas la requette qui fait ça; mais je ne sais pas comment l'implementer, sachant que je dois rester sur la meme page .
ce que j'ai fait un lien <a href: mapage>ascendant</a> // pareil pour descendant.
mais comme j'ai le même action, et que j'appel le même fichier contenant la requette, je ne sais pas sur quoi tester pour savoir si je viens de ascendant et descendant.
Merci pour vos suggestions.
j'ai une page ou j'affiche les images : exemple
ligne 1: img 1 img2 img3
Linge 2: img 4 img5 img6
....
mais les images sont groupé par famille, famille produit A famille produit B
Je veux faire de liens triez ascendent et descendant
si je clique ascendant il me les trie par famille. et vise versa.
mon problème n'est pas la requette qui fait ça; mais je ne sais pas comment l'implementer, sachant que je dois rester sur la meme page .
ce que j'ai fait un lien <a href: mapage>ascendant</a> // pareil pour descendant.
mais comme j'ai le même action, et que j'appel le même fichier contenant la requette, je ne sais pas sur quoi tester pour savoir si je viens de ascendant et descendant.
Merci pour vos suggestions.
Configuration: Windows XP Internet Explorer 7.0
16 réponses
-
bonjour
si tu fais cela avec une base de donnée :D
voila un pti exempleecho "<a href=mapage.php?order=asc>ascendant</a>"; echo "<a href=mapage.php?order=desc>descendant</a>"; $order = $_GET['order']; //petite securité if ($order != "asc" && $order != "desc") $order = asc; mysql_query("select * from matable order by id $order");
voila a quoi ca devrait ressembler :p
Adns -
Un simple paramètre dans l'url non ?
<a href="lapage.php?order=ASC">croissant</a> <a href="lapage.php?order=DESC">décroissant</a>
$order = 'ASC'; // Par défaut if( isset($_GET['order']) && $_GET['order'] == 'DESC' ) $order = 'DESC'; $sql = 'SELECT .... FROM .... ORDER BY colonne ' . $order;
-
Merci pour vos réponses, j'ai essayé de le faire mais il me sort de la page carrement, en gardant sur l'URL l'adresse exacte.
Merci -
"j'ai essayé de le faire mais il me sort de la page"
il te sors de la page ?? ^o)
Adns -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
en cliquant assendant par exemple, je me retrouve à la page d'accueil avec une erreur:
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in
Merci -
-
Je le veux bien, mais c super compliquer des pages entièrre, trop volumineux, rien que pour suivre je vous explique si vous voulez la façon dont il est conçus, en fait c un code déja fait donc je continue le travail.
Merci beaucoup -
-
<td align="center"> <FONT color="#6DC5E0" ><b>Trier par ordre :</b></FONT></td>
<td><a href="?cat=devis&page=produit?order=ASC" > <FONT color="#6DC5E0" ><b>croissant </b></FONT></a>|
<a href="?cat=devis&page=produit?order=DESC" > <FONT color="#6DC5E0" ><b>décroissant </b></FONT></a>
</td>
<?
$order = 'ASC'; // Par défaut
if( isset($_GET['order']) && $_GET['order'] == 'DESC' )
$order = 'DESC';
?>
<!--
/** ici on va recupérer les images par famille "Vase""assiete"
-->
<?//}?>
</tr>
<br>
<tr>
<?
// On affiche 5 vignettes par ligne
$array_photos = AFFICHAGE::show_thumbs('bda_Produit');
for ($i=0;$array_photos[$i];$i++)
{
if (!($i%4) && $i)
echo "</tr><tr>";
?>
<td width="150" align="center" style="border:solid 1px #dfdfdf; padding:2px;">
..................... ici je continue l'affichage
et cette partie elle est dans une page : vase.php qui est appelé un moment donné de la page principale accueil.php et dans cette derniere je difinie l'action.
Je ne sais pas si c claire -
cat=devis&page=produit?order=ASC"
cette ligne est pas bonne remplace la par
cat=devis&page=produit&order=ASC"
de meme pour le DESC
Adns -
Merci , maintenant il reste sur la bonne page, sauf qu'il fait pas le tri, donc à votre avis , c de ma requette ?
Merci bcp -
-
Je peu vous envoyer ça en privé ? comment je le fais sinon .?
Merci -
Excusez moi j'ai du retirer ma requette, car je ne suis pas autorisé de la mettre sur le net, je trouve que c con , mais je suis obligé de respcté, mais si possible je vous envois ça par mail special ??
merci de répondre -
class Requette
{
static public function show_thumbs($table)
{
$file_thumb = ($table == 'bd_produit') ? "VignetteProduit" : "photo_vignette";
$file_popup = ($table == 'bd_produit') ? "PopUpArticle" : "photo_pop";
$file_descriptif = ($table == 'bd_produit') ? "DesignationI" : "Designation";
$file_descriptif_commercial = ($table == 'bd_produit') ? "descriptif_commercial" : "commentaire";
$file_name = ($table == 'bd_produit') ? "NomArticleInternet" : "Designation";
$id_produit = ($table == 'bd_produit') ? "IDArticle" : "IDPCA";
$conds = ($table == 'bd_produit') ? "Epaisseur=3 ORDER BY Famille".$order."" : "poids='P'";
$array_thumb = array();
$tab = SQL_CLASS::select_all($table, $conds, true);
for ($i=0;$tab[$i];$i++)
{
$array_stack['id_produit'] = $tab[$i][$id_produit];
$array_stack['descriptif'] = $tab[$i][$file_descriptif];
$array_stack['descriptif_commercial'] = $tab[$i][$file_descriptif_commercial];
$array_stack['nom'] = $tab[$i][$file_name];
$array_stack['vignette'] = $tab[$i][$file_thumb];
$array_stack['popup'] = $tab[$i][$file_popup];
array_push($array_thumb, $array_stack);
}
return $array_thumb;
}
} -
Euh ton code n'a rien d'un truc ultra secret ;)
Tu utilises le $order, mais tu ne le déclares pas.
$conds = ($table == 'bd_produit') ? "Epaisseur=3 ORDER BY Famille".$order."" : "poids='P'";
Par :
$conds = ($table == 'bd_produit') ? 'Epaisseur=3 ORDER BY Famille ' . (isset($_GET['order']) && $_GET['order'] == 'DESC') ? 'DESC' : 'ASC' : "poids='P'";