bonjour j'aimerais faire une recherche par categorie mais le probleme est que si je choisis Arrivee tout comme Depart le meme resultat s'affiche alors que ce ne devrait pas etre le cas: voici mon code peut etre vous troverez le hic!!
en supposant qu'on s'est deja connecte ala base
<?php
$resultats="";
$nbreparametres=1; // nombre de parametres à renseigner pour la recherche
if(isset($_POST['query'])&& !empty($_POST['query'])){
$query= preg_replace("#[^a-zA-Z ?0-9]#i", "", $_POST['query']);
if($_POST['filtre']== "site entier"){
$nbreparametres=4;
$sql="(SELECT Id_Arrivee,Date_arrivee AS title FROM arrivee WHERE Date_arrivee LIKE ? OR objet LIKE ?)
UNION (SELECT Id_depart,date_correspondance AS title FROM depart WHERE date_correspondance LIKE ? OR destinataire LIKE ?)";
} else if($_POST['filtre']=="blog"){
$sql="SELECT Id_Arrivee,Date_arrivee AS title FROM arrivee WHERE Date_arrivee LIKE ? OR objet LIKE ?";
} else if($_POST['filtre']=="page"){
$sql= "SELECT Id_depart,date_correspondance AS title FROM depart WHERE date_correspondance LIKE ? OR destinataire LIKE ?";
}
require_once('Connections/connexion.php');
$req=$db->prepare($sql);
if($nbreparametres=2){
$req->execute(array('%'.$query.'%', '%'.$query.'%'));
} else{
$req->execute(array('%'.$query.'%', '%'.$query.'%', '%'.$query.'%', '%'.$query.'%'));
}
$count=$req->rowCount();
if($count >= 1){
echo " $count résultat(s) trouvé(s) pour <strong>$query</strong><hr/>";
while($data = $req->fetch(PDO::FETCH_OBJ)){
echo '#'.$data->Id_depart.'-Titre: '.$data->title.'<br/>';
}
}else {
echo " 0 résultat trouvé pour <strong>$query</strong><hr/>";
}
}
?>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
<label for="query">Entrer votre recherche</label>
<input type="search" name="query" maxlength="80" size="80" id="query"/></br>
Rechercher au niveau de :
<select name="filtre">
<option value="Arrivee">Arrivee</option>
<option value="Depart">Depart</option>
</select></br>
<input type="submit" value="Rechercher">
</form>
<?php
if (isset($_POST['query'])){
require_once('Connections/connexion.php');
extract($_POST);
$req = "select * FROM arrivee where categorie like '%$Rechercher%'" ;
$execute = mysql_query($req) or die (mysql_error()) ;
echo"<table border=0 >
<tr>
<td>Id_Arrivee</td>
<td>Date_arrivee</td>
<td>num_correspondance</td>
<td>expediteur</td>
<td> objet </td>
<td>categorie</td>
<td>num_reponse</td>
<td>designation</td>
<td>observation</td>
<td>genre</td>
<td>id_dossier</td>
<td>id_destinataire</td>
<td>id_fournisseur</td>
</tr>";
while($ligne=mysql_fetch_array($execute)){
echo"<tr>
<td>".$ligne['Id_Arrivee']."</td>
<td>".$ligne['Date_arrivee']."</td>
<td>".$ligne['num_correspondance']."</td>
<td>".$ligne['expediteur']."</td>
<td>".$ligne['objet']."</td>
<td>".$ligne['categorie']."</td>
<td>".$ligne['num_reponse']."</td>
<td>".$ligne['designation']."</td>
<td>".$ligne['observation']."</td>
<td>".$ligne['genre']."</td>
<td>".$ligne['id_dossier']."</td>
<td>".$ligne['id_destinataire']."</td>
<td>".$ligne['id_fournisseur']."</td>
</tr>";
}
echo"</table>";
}
?>