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 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157
| <?php
include('../inc_connect.php');
if(isset($_REQUEST['recherche']))
{
$_SESSION['$recherche'] = $_REQUEST['recherche'] ;
if ( isset( $_SESSION['$recherche'] ) )
echo $_SESSION['$recherche'] ;
}
$limit = 5;
$offset = ((isset($_REQUEST['offset']) && $_REQUEST['offset'] > 0) ? $_REQUEST['offset'] : 0);
// on récupère les critères sélectionnés
extract ($_REQUEST);
$i = 0;
// si la variable est présente, on lui affecte une place dans le tableau 'choix[]', qui nous servira ensuite à construire le WHERE de la requête.
if(!empty($code_commerce)) { $choix[$i++] = "code_commerce = '$code_commerce'"; }
if(!empty($departement)) { $choix[$i++] = "departement = '$departement'"; }
if(!empty($ref)) { $choix[$i++] = "ref = '$ref'"; }
// on insère les éléments remplis dans une variable $critere, en commençant par la première occurrence, puis on boucle
$critere = @$choix[0]." ";
for($j=1;$j<$i;$j++)
{
$critere .= " AND ".$choix[$j]." ";
}
// enfin on fait la requête si $i >0, ça veut dire qu'il y a des critères
if($i > 0)
{
// requete de selection
$sql = "SELECT SQL_CALC_FOUND_ROWS * FROM tous_commerces2 WHERE $critere ORDER BY ref desc";
$sql .= ' LIMIT '.$offset.', '.$limit.'';
$requete = @mysql_query( $sql, $cnx ) or die( "ERREUR MYSQL numéro: ".mysql_errno()."<br>Type de cette erreur: ".mysql_error()."<br>\n" );
}
$i = @mysql_num_rows($requete); //comptage du nombre d'entrées sélectionnées par la recherche
if ($i == 0) //s'il n'y a pas de résultat
{
echo '<font color="#FF0000">Pas de résultat ....</font><br><font color="#808080">1 - Faites votre choix dans le type de commerce<br>2 - choisissez un département limitrophe<br>3 - cette référence peut ne plus exister (commerce vendu)</font>';
}
else
{
echo 'Nombre de résultats: ' . $i . '<br /><br />'; //nombre de résultats
$sql = "SELECT * FROM tous_commerces2 ORDER BY ref desc";
}
while ($donnees = @mysql_fetch_assoc( $requete ) )
{
?>
<tr>
<fieldset class="arrondi" style="border:2px solid #CCCCCC; font-family:verdana; color:#000000; background-color:#FFFFFF; margin-bottom: 5px">
<div style="float:left; width:200px; margin-top: 3px"> <font color="#808080" size="2" face="arial">Ref:</font> <font color="#0000FF" face="arial" size="2"><?php echo $donnees['ref']; ?></font></div>
<div style="float:right; width:250px; margin-top: 5px">
<font color="#808080" size="2" face="arial">Prix des murs:</font> <font color="FF0000" face="arial" size="2"><strong><?php echo $donnees['prix_murs']; ?> €</strong></font></div>
<div style="margin:auto; margin-top: 5px">
<font color="#808080" size="2" face="arial">Prix du Fonds de C</font><font color="#808080" size="3" face="arial">:</font> <font color="FF0000" size="2"><strong><?php echo $donnees['prix']; ?> €</strong></font></div>
<div align="left" style="margin-bottom: 5px; margin-top: 5px"> <font color="808080" size="3" face="arial"><strong><?php echo $donnees['commerce']; ?></strong></font></div>
<div align="left" style="margin-bottom: 5px"> <font color="#808080" size="2">Descriptif:</font> <font color="#808080" size="2" face="arial"><?php echo $donnees['descriptif']; ?></font></div>
<div style="float:left; margin-bottom: 0"><a href="#" class="bulle"><img border="0" src="../images/google-map.jpg" width="90" height="21"><span><img style="border:2px solid #FFFFFF"; src="../cartographie/<?php echo $donnees['google-map']; ?>" width="500" height="400"></span></a></div>
<div style="float:right; margin-bottom: 0"><a href="../Dossier_pages/selection.php?recherche=<?php echo $donnees['ref']; ?>"><img border="0" src="../images/button2.jpg" width="100" height="35"></a></div>
<div style="margin:auto" align="center"><img src="../images/<?php echo $donnees['news_vendu']; ?>" width="55" height="35"></div>
</fieldset>
</tr>
<?php
}
// récupère le nombre total d'enregistrements dans la table
$requete = mysql_query('SELECT FOUND_ROWS() AS total');
// $donnees['total'] contient le nombre total d'enregistrements dans la table
$donnees = mysql_fetch_assoc($requete);
// appel de la fonction d'affichage de la pagination
echo paging('../Dossier_pages/recherche2.php', $donnees['total'], $limit, $offset);
/**
* Affiche la pagination
*
* @param string $page
* @param integer $total_rows
* @param integer $limit
* @param integer $offset
* @param array $preserved_params, permet de spécifier des paramètres supplémentaires
* à transmettre entre les pages array('param1'=>'valeur', 'param2'=>'valeur', [...])
* @return string
*/
function paging($page, $total_rows, $limit, $offset, $preserved_params = null){
$query = '';
$str_hidden = '';
if (is_array($preserved_params)) {
foreach ($preserved_params as $k=>$v) {
if ($k != 'offset') {
$query .= $k.'='.urlencode($v).'&';
$str_hidden .= '<input type="hidden" name="'.$k.'" value="'.htmlentities($v).'" />';
}
}
}
if (strpos($page, '?') !== false) {
$page = substr($page, 0, strpos($page, '?'));
}
$nb_pages = ceil($total_rows / $limit);
$i = 0;
$j = 0;
$idx_page = 0;
while ($i < $total_rows) {
$tab_pages[$j]['id'] = $i;
$tab_pages[$j]['text'] = ($j + 1).' / '.$nb_pages;
if ((int)$offset >= $i) {
$idx_page = $j;
}
$i += $limit;
$j++;
}
$reponse = ' <p><form class="barre-navigation-pages" action="'.$page.'">';
$page .= '?'.$query;
if ($offset > 0)
{$reponse .= '<a class="prevnext" href="'.$page.'&offset='.($offset - $limit).'" titre="lien-precedant">Précédant</a> ';}
$reponse .= 'Page <select name="offset">';
for ($i = 0; $i < $nb_pages; $i++) {
$reponse .= '<option value="'.$tab_pages[$i]['id'].'" ';
if ($i == $idx_page) {
$reponse .= 'selected="selected"';
}
$reponse .= '>'.$tab_pages[$i]['text'].'</option>';
}
$reponse .= '</select>'.$str_hidden.'';
if ($offset < ($total_rows - 1) && isset($tab_pages[$idx_page + 1])) {
$reponse .= ' <a class="prevnext" href="'.$page.'offset='.$tab_pages[$idx_page + 1]['id'].'" titre="lien-suivant">Suivant</a>';
}
$reponse .= '</form></p>';
return $reponse;
}
?> |
Partager