Pertinance Session php our une requete
Bonjour,
J'ai un moteur de recherche. Lorsque le client choisit ses options via un formulaire et est recuperer afin de creer une requete. J'affiche 4 resultats par page ce qui fait que je rapelle ma requete pour construire les autres pages. J'ai choisi de mettre ma requete dans une session php . Voici le code :
Code:
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
|
session_start();
if(!$_SESSION['rech']) { header("Location:recherche.php?mess=2"); }
include ("logbdd.php");
include ("fonctionquote.php");
$dep='';
$ext= " AND ";
if(isset($_GET['lim']) && !is_numeric($_GET['lim'])) header("Location:recherche.php");
if(!isset($_GET['lim'])){
$lim = 0;
} else {
$lim= $_GET['lim'];
}
$nbre= 4;
if(isset($_SESSION["requete"])){
$reqbis = "SELECT * FROM annonce WHERE (".$_SESSION["requete"].") AND activ='1' GROUP by idannonce LIMIT ".$lim.", ".$nbre."";
$result = mysql_query($reqbis) or die(mysql_error());
} else {
$req = "SELECT * FROM annonce WHERE (";
$filters = array();
$filters[]= "typeoffre='".$_POST['tyre']."'";
if(isset($_POST['depvilla']) && $_POST['depvilla']=='2') { $dep='23'; }
if(isset($_POST['depvilla']) && $_POST['depvilla']=='1') { $dep='78'; }
if($_POST['typelog']) $filters[] = "typelog='".quote_smart($_POST['typelog'])."'";
if($_POST['nbrpersonnes'] != 0) $filters[] = "nbrpersonnes >= '".quote_smart($_POST['nbrpersonnes'])."'";
if(isset($_POST['piscine'])) $filters[] = "piscine='".quote_smart($_POST['piscine'])."'";
if($dep!='') $filters[] = "depvilla='".quote_smart($dep)."'";
if(isset($_POST['ville']) && strlen($_POST['ville']) > 2 && $_POST['ville'] != 'Choisir') $filters[] = "ville='".quote_smart($_POST['ville'])."'";
if($_POST['cham'] !=0) $filters[] = "cham >= '".quote_smart($_POST['cham'])."'";
$requ= implode(" ".$ext." ", $filters);
$req.= implode(" ".$ext." ", $filters);
$req.=") AND activ='1'";
$total= $req;
$resulttotal = mysql_query($total) or die(mysql_error());
$nbtotal= mysql_num_rows($resulttotal);
$req.= " GROUP by idannonce LIMIT 0, 4";
$_SESSION["requete"] = $requ;
$_SESSION["nbretotal"]= $nbtotal;
$_SESSION['tyre'] = $_POST['tyre'];
$result = mysql_query($req) or die(mysql_error());
} |
Je voudrais votre avis, autre idée ? Est ce securisée ?
Merci