if($ligne['region']=='$region_choisie' || $ligne['region']=="tous")
echo $ligne['nom_utilisateur']
J'espere etre clair et répondre a ta questionCode : Tout sélectionner
<select name="region" class="select">
<option value="re01">Alsace</option>
<option value="re02">Aquitaine</option>
<option value="re03">Auvergne</option>
<option value="re04">Basse Normandie</option>
<option value="re05">Bourgogne</option>
<option value="re06">Bretagne</option>
<option value="re07">Centre</option>
<option value="re08">Champagne-Ardennes</option>
<option value="re09">Corse</option>
<option value="re10">Dom-Tom</option>
<option value="re11">Franche-Comté</option>
<option value="re12">Haute-Normandie</option>
<option value="re13">Ile-de-France</option>
<option value="re14">Languedoc-Roussillon</option>
<option value="re15">Limousin</option>
<option value="re16">Lorraine</option>
<option value="re17">Midi-Pyrénées</option>
<option value="re18">Nord-Pas-de-Calais</option>
<option value="re19">Pays de Loire</option>
<option value="re20">Picardie</option>
<option value="re21">Poitou-Charentes</option>
<option value="re22">Provence-Alpes-Cote d'Azur</option>
<option value="re23">Rhone-Alpes</option>
<option value="re24">International</option>
<option value="rezz">Toutes régions</option></select>
// Pour rechercher sur l'option "tous"
$VARfonction = $_POST['VARfonction'];
$VARregion = $_POST['VARregion'];
$VARtype_offre = $_POST['VARtype_offre'];
$VARformation = $_POST['VARformation'];
if ($VARfonction == "fczz") $VARfonction="fc%";
if ($VARregion == "rezz") $VARregion="re%";
if ($VARtype_offre == "cazz") $VARtype_offre="ca%";
if ($VARformation == "fozz") $VARformation="fo%";
// recherche avec troncature et opérateur inter-mot implicite "ET" pour le BOOLEAN MODE de la recherche full text
$recherche = $_POST['recherche'];
if ($recherche != "") // SI LE CHAMP RECHERCHE N'EST PAS VIDE
{
$liste_cles = explode(" ", $recherche); // on mets les mots saisis dans un tableau
$liste = array(); // on instancie le tableau
foreach($liste_cles as $cle)
{
$cle = "+".$cle."*"; // ajout de l'opérateur intermot ET et de la troncature à droite pour chaque mot
array_push($liste, $cle); // on met les mots dans le tableau instancié
}
$liste_recherche = implode(" ", $liste); // passage du tableau en chaine de caractères et ajout de l'espace entre chaque mot clé
$maxRows_Recordset1 = 50;
$pageNum_Recordset1 = 0;
if (isset($_GET['pageNum_Recordset1'])) {
$pageNum_Recordset1 = $_GET['pageNum_Recordset1'];
}
$startRow_Recordset1 = $pageNum_Recordset1 * $maxRows_Recordset1;
mysql_select_db($database_emploi, $emploi);
$query_Recordset1 = "SELECT ID_CAND, DATE, INTITULE, NOM, PRENOM, FORMATION FROM candidatures, formation WHERE MATCH (CV, INTITULE, MOTIVATION) AGAINST ('$liste_recherche' IN BOOLEAN MODE) AND Affiche=1 AND (candidatures.CODE_FONC LIKE '$VARfonction') AND (candidatures.CODE_FOR LIKE '$VARformation') AND (candidatures.CODE_REG LIKE '$VARregion') AND (candidatures.CODE_TYP LIKE '$VARtype_offre') AND candidatures.CODE_FOR = formation.CODE_FOR ORDER BY DATE DESC";
$query_limit_Recordset1 = sprintf("%s LIMIT %d, %d", $query_Recordset1, $startRow_Recordset1, $maxRows_Recordset1);
$Recordset1 = mysql_query($query_limit_Recordset1, $emploi) or die(mysql_error());
$row_Recordset1 = mysql_fetch_assoc($Recordset1);
}
else // SI LE CHAMP RECHERCHE EST VIDE
{
$maxRows_Recordset1 = 50;
$pageNum_Recordset1 = 0;
if (isset($_GET['pageNum_Recordset1'])) {
$pageNum_Recordset1 = $_GET['pageNum_Recordset1'];
}
$startRow_Recordset1 = $pageNum_Recordset1 * $maxRows_Recordset1;
mysql_select_db($database_emploi, $emploi);
$query_Recordset1 = "SELECT ID_CAND, DATE, INTITULE, NOM, PRENOM, FORMATION FROM candidatures, formation WHERE Affiche=1 AND (candidatures.CODE_FONC LIKE '$VARfonction') AND (candidatures.CODE_FOR LIKE '$VARformation') AND (candidatures.CODE_REG LIKE '$VARregion') AND (candidatures.CODE_TYP LIKE '$VARtype_offre') AND candidatures.CODE_FOR = formation.CODE_FOR ORDER BY DATE DESC";
$query_limit_Recordset1 = sprintf("%s LIMIT %d, %d", $query_Recordset1, $startRow_Recordset1, $maxRows_Recordset1);
$Recordset1 = mysql_query($query_limit_Recordset1, $emploi) or die(mysql_error());
$row_Recordset1 = mysql_fetch_assoc($Recordset1);
}
$query_Recordset1 = "SELECT ID_CAND, DATE, INTITULE, NOM, PRENOM, FORMATION ".
"FROM candidatures, formation ".
"WHERE MATCH (CV, INTITULE, MOTIVATION) AGAINST ('$liste_recherche' IN BOOLEAN MODE) ".
"AND Affiche=1 ".
"AND (candidatures.CODE_FONC LIKE '$VARfonction') ".
"AND (candidatures.CODE_FOR LIKE '$VARformation') ";
if($VARregion != "rezz")
{
$query_Recordset1.= "AND (candidatures.CODE_REG LIKE '$VARregion') ";
}
$query_Recordset1.= "AND (candidatures.CODE_TYP LIKE '$VARtype_offre') ".
"AND candidatures.CODE_FOR = formation.CODE_FOR ".
"ORDER BY DATE DESC";
Au passage, j'ai organisé l'écriture de la requête pour la rendre lisible en utilisant le moins possible la barre de défilement horizontale, c'est quand même plus facile.if ($VARfonction == "fczz") $VARfonction="fc%";
if ($VARregion == "rezz") $VARregion="re%";
if ($VARtype_offre == "cazz") $VARtype_offre="ca%";
if ($VARformation == "fozz") $VARformation="fo%";
en
if ($VARfonction == "fczz")
{
$VARfonction="fc%" ;
}
else
{ $VARfonction= $VARfonction + "OR LIKE fczz" ;
if ($VARfonction == "fczz")
{
$VARfonction="fc%";
}
else
{
$VARfonction= $VARfonction + " OR offres.CODE_FONC LIKE 'fczz'" ;
}
mais cela ne fonctionne pas... Je choisis de sortir toutes les annonces Marketing (fc09). Lorsque j'affiche la requête SQL après traitement, j'obtiens :$VARfonction= "$VARfonction"." OR offres.CODE_FONC LIKE 'fczz'" ;
mais cela ne résoud rien ... La requête cette fois ci échoue :
Personne n'a une idée !!
Vous êtes pourtant nombreux à lire ce topic...
if ($VARfonction == "fczz")
{
$VARfonction="fc%";
}
else
{
$VARfonction= "$VARfonction'"." OR offres.CODE_FONC LIKE 'fczz" ;
}$VARfonction = ($VARfonction == "fczz") ? "fc%" : $VARfonction." OR offres.CODE_FONC LIKE 'fczz'" ;