Je suis tombé sur quelqu'un de motivé apparemment...
Je passe les détails de connection, etc...voila simplement les requetes :
<?
$requete_a="SELECT localisation,codif_activ,codif_metier FROM xtra_mission WHERE id_mission='$liste_missions'";
$result_a=mysql_query ($requete_a) or die ("1".mysql_error());
while ($row_a=mysql_fetch_array($result_a)) {
$codif_activ=$row_a['codif_activ'];
$codif_metier=$row_a['codif_metier'];
$localisationE=$row_a['localisation'];
$localisationE=substr($localisationE,0,(strlen($localisationE)-1));
}
$requete_b="SELECT * FROM xtra_geociblage WHERE departement IN ('".$localisationE."')";
$result_b=mysql_query ($requete_b) or die ("2".mysql_error());
while ($row_b=mysql_fetch_array($result_b)) {
$zone1=substr($row_b['zone1'],0,(strlen($row_b['zone1'])-1));
$zone2=substr($row_b['zone2'],0,(strlen($row_b['zone2'])-1));
$zone3=substr($row_b['zone3'],0,(strlen($row_b['zone3'])-1));
$zone1=ereg_replace(";",";','",$zone1);
$zone2=ereg_replace(";",";','",$zone2);
$zone3=ereg_replace(";",";','",$zone3);
}
$liste_secteurs=substr($codif_activ,0,(strlen($codif_activ)-1));
$requete_secteurs=str_replace(';',';%\' OR secteur_activite LIKE \'%',$liste_secteurs);
$liste_metier=substr($codif_metier,0,(strlen($codif_metier)-1));
$requete_metier=str_replace(';',';%\' OR C_codification_metier LIKE \'%',$liste_metier);
// Affichage des missions sous forme de SELECT
$requete="SELECT * FROM xtra_mission WHERE agence='$agence' AND archive='0'";
$result=mysql_query ($requete) or die (mysql_error());
while ($row=mysql_fetch_array($result)) {
$intit_poste=$row['intitule_poste'];
$id_mission=$row['id_mission'];
$identreprise=$row['id_entreprise'];
$requete2="SELECT nom_entreprise FROM xtra_entreprise WHERE id_entreprise='$identreprise'";
$result2=mysql_query ($requete2) or die (mysql_error());
while ($row2=mysql_fetch_array($result2)) {
$nomE1=$row2['nom_entreprise'];
}
echo "<OPTION value='$id_mission' ";
if (isset($liste_missions)){if (ereg($id_mission,$liste_missions)){echo "selected";}}
echo ">$nomE1 - $intit_poste</OPTION>";
}
// Liste des secteurs sous forme de SELECT
$liste_secteurs=ereg_replace(";",",",$liste_secteurs);
$requete="SELECT codif_activite FROM xtra_codif_activite WHERE id_codif_activite IN (".$liste_secteurs.")";
$resultat=mysql_query ($requete) or die (mysql_error());
while($row=mysql_fetch_array($resultat)){
$liste_ok .=$row['codif_activite'].", ";
}
echo "<BR>Secteur(s) d'activité : <span style=\"color:#FF6600;\">".substr($liste_ok,0,(strlen($liste_ok)-2))."</span>";
// Liste des métiers sous forme de SELECT
$liste_metier=ereg_replace(";",",",$liste_metier);
$requete="SELECT codif_metier FROM xtra_codif_metier WHERE id_codif_metier IN (".$liste_metier.")";
$resultat=mysql_query ($requete) or die (mysql_error());
while($row2=mysql_fetch_array($resultat)){
$liste_ok2 .=$row2['codif_metier'].", ";
}
echo "<BR>Métier(s) : <span style=\"color:#FF6600;\">".substr($liste_ok2,0,(strlen($liste_ok2)-2))."</span>";
// Recherche de toutes les entreprises
$requete_calcul="SELECT nom_entreprise,id_entreprise,departement FROM xtra_entreprise WHERE statut='Cible' AND (secteur_activite LIKE '%".$requete_secteurs.";%') AND departement IN ('".$zone1.";','".$localisationE.";') ORDER BY departement ASC, nom_entreprise ASC ";
$result_calcul=mysql_query ($requete_calcul) or die (mysql_error());
$total_E=mysql_num_rows($result_calcul);
echo "<table width=\"740\" border=\"0\" align=\"center\" cellpadding=\"0\" cellspacing=\"0\">
</tr>
<tr style=\"color:#FFFFFF; background-color:#FF8F18\">
<td width=\"30\" align=\"center\">Dpt</td>
<td width=\"560\">Entreprise</td>
<td width=\"70\" align=\"right\">Contact</td>
<td width=\"80\" align=\"center\">Statut</td>
</tr>";
$megatotal_g=0;
while ($row=mysql_fetch_array($result_calcul)){
echo "<tr ";
// on surligne les lignes si cibler_pour ou ne_pas_cibler_pour contiennent un message
$requete_d="SELECT id_entreprise FROM xtra_entreprise WHERE id_entreprise='".$row['id_entreprise']."' AND cibler_pour LIKE '%MI".$liste_missions.";%'";
$requete_e="SELECT id_entreprise FROM xtra_entreprise WHERE id_entreprise='".$row['id_entreprise']."' AND ne_pas_cibler_pour LIKE '%MI".$liste_missions.";%'";
$resultat_d=mysql_query ($requete_d) or die (mysql_error());
$total_d=mysql_num_rows($resultat_d);
$resultat_e=mysql_query ($requete_e) or die (mysql_error());
$total_e=mysql_num_rows($resultat_e);
if($total_d>0){ echo "style=\"background-color:#b9f1ff\" "; }
if($total_e>0){ echo "style=\"background-image:url(images/pas_cibler.gif)\" "; }
echo ">
<td align=\"center\">".$departement."</td>
<td><A href=\"frame_contact.php?id=".$row['id_entreprise']."&histo=raz\" target=\"centre\" class=\"ciblage\">".$row['nom_entreprise']."</A></td>
<td align=\"right\">";
$requete_g="SELECT id_profil FROM xtra_profil WHERE id_entreprise='".$row['id_entreprise']."' AND C_codification_metier LIKE '%".$requete_metier."%'";
$resultat_g=mysql_query ($requete_g) or die (mysql_error());
$total_g=mysql_num_rows($resultat_g);
$requete_f="SELECT id_profil FROM xtra_profil WHERE id_entreprise='".$row['id_entreprise']."'";
$resultat_f=mysql_query ($requete_f) or die (mysql_error());
$total_f=mysql_num_rows($resultat_f);
if($total_g>0){ echo "<span style=\"color:#FF6600; font-weight:bold\">"; } else { echo "<span>"; }
echo "$total_g/$total_f</span>";
echo "</td>
<td align=\"center\">";
$requete_c="SELECT identifie FROM xtra_entreprise WHERE id_entreprise='".$row['id_entreprise']."' AND identifie LIKE '%MI".$liste_missions.";%'";
$resultat_c=mysql_query ($requete_c) or die (mysql_error());
$total_c=mysql_num_rows($resultat_c);
if($total_c>0){ echo "<span style=\"color:#006600\">IDENTIFIÉ</span>"; }
else { echo "<span style=\"color:#b4b4b4; font-size:9px;\">A identifier</span>"; }
echo "</td>
</tr>";
$megatotal_g=$megatotal_g+$total_g;
}
echo "</table>";
?>
Si on peut simplifier ça et ba chapeau!
Dans tous les cas l'affichage des différents select ne peut pas se faire autrement que requete par requete je pense.