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 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76
| <?
//pour eviter page expiree sous ie et message renvoyer info sous ff
session_cache_limiter('private, must-revalidate');
//detruit filtre si on change de categorie
unset($_SESSION['filtre']);
//debut session
session_start();
// variable pour trouvez la page du catalogue
if($_GET["debut"] == ""){
$Debut = 0;
}else{
$Debut = intval($_GET["debut"]);
}
// si on post un filtre on reinit le debut a la page1
if($_POST["taille"] != ""){
$Debut = 0;
}else{
$Debut = intval($_GET["debut"]);
}
//si post effectué la requete est modfie en fonction
//puis sauvegarde dans fichier de session
//pour conserver le filtre en page 2 du catalogue
if (isset($_POST["taille"])){
$secuTaille=intval($_POST["taille"]);
$_SESSION['filtre']=$secuTaille;
}
else
{
if (isset($_SESSION['filtre']))
$secuTaille=$_SESSION['filtre'];
}
//debut requete a modifier par filtre
$requete = "SELECT DISTINCT ...";
//test sur champ du catalogue pour verifier si on applique le filtre
if($rowRub["FitreActif"] == "1"){
//decoupe des requete et modif des requete en fonction du post
switch ($secuTaille){
case 0 :
//0 correspond a indifferent donc requete classqiue
$resultProduitsTmp = "$requete";
$resultProduitsTmp .= " ORDER BY Ordre LIMIT " . $Debut . "";
$resultProduits = mysql_query("$resultProduitsTmp, 19",$db);
break;
case 50 :
$resultProduitsTmp = "$requete";
//ajout de la condition du filtre
$resultProduitsTmp .= " AND ((table2.nom >= 49 AND table2.nom <=51) OR (table.nom >= 49 AND table.nom <=51))";
$resultProduitsTmp .= " ORDER BY Ordre LIMIT " . $Debut . "";
$resultProduits = mysql_query("$resultProduitsTmp, 19",$db);
break;
case 52 : ...
break;
}
}else{
//si param filtre absent requete classique
$resultatPro = mysql_query("...");
}
?> |
Partager