par
StarT » 30 oct. 2005, 19:15
je te remercie infiniment Truc, un seul problème me reste puis je me tais lol !
quand je choisi le numéro de la page à selectionné, ce dernier s'ecrit une deuxieme fois dans la ligne de pagination
je te donne un exemple :
ma requete a renvoyée 312 reponses, donc j'ai 32 pages à visualiser , voila ma ligne de page jusqu'à présent :
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
après je choisi la 2ième page voila ma nouvelle ligne de pages :
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11
que dois-je faire ?!
<HTML>
<head>
<title>Recherche Achat</title>
<body bgcolor=white text=black link=blue vlink=blue alink=blue>
<?php
include("gestion/config.php");
include ("fonctions.php");
$pays_combo = isset($_POST['pays_combo']) ? $_POST['pays_combo'] : (isset($_GET['pays_combo']) ? $_GET['pays_combo'] : 0);
$sub_ville = isset($_POST['sub_ville']) ? $_POST['sub_ville'] : (isset($_GET['sub_ville']) ? $_GET['sub_ville'] : 0);
$sub_type_achat = isset($_POST['sub_type_achat']) ? $_POST['sub_type_achat'] : (isset($_GET['sub_type_achat']) ? $_GET['sub_type_achat'] : 0);
$sub_type_logement = isset($_POST['sub_type_logement']) ? $_POST['sub_type_logement'] : (isset($_GET['sub_type_logement']) ? $_GET['sub_type_logement'] : 0);
$meublier = isset($_POST['meublier']) ? $_POST['meublier'] : (isset($_GET['meublier']) ? $_GET['meublier'] : 0);
$radionchk = isset($_POST['radionchk']) ? $_POST['radionchk'] : (isset($_GET['radionchk']) ? $_GET['radionchk'] : 0);
// reccupération varibles
/*$pays_combo=$_POST['pays_combo'];
$sub_ville=$_POST['sub_ville'];
$sub_type_achat =$_POST['sub_type_achat'];
$sub_type_logement =$_POST['sub_type_logement'];
$meublier=$_POST['meublier'];
$radionchk=$_POST['radionchk'];
$allcriteres=isset($_POST['allcriteres']) ? $_POST['allcriteres'] : ""; */
$finrequete="";
$k=0;
$nb_nouv_par_page = 1;
//nb_nouv_par_page = 1;
/* Nombre de nouvelles qui seront affichées sur chaque page */
//$url = "./pageparpage.php?page=";
/* On détermine quelle est la page qui est actuellement affichée */
$url = "./result1.php?page=";
$sql="select * from achat where location='".$radionchk."'";
$result = mysql_query($sql);
$nb_par_page = 10;
//$page_en_cours = isset($_GET['page']) ? ($_GET['page'] * $nb_pages) : 0;
//$page_affichee = ($page_en_cours + 1);
$page_en_cours = isset($_GET['page']) ? $_GET['page'] : 0;
$page_affichee = ($page_en_cours + 1);
//$operateur= ($allcriteres == "oui") ? " AND " : " OR ";
$operateur= " AND ";
if ($pays_combo != "0")
{
$sql.= $operateur." pays like '%$pays_combo%' ";
}
if ($sub_ville != "0")
{
$sql.= $operateur." ville like '%$sub_ville%' ";
}
if ($sub_type_achat != "0")
{
$sql.= $operateur." type_achat like '%$sub_type_achat%' ";
}
if ($sub_type_logement != "0")
{
$sql.= $operateur." type_logement like '%$sub_type_logement%' ";
}
if ($meublier != "0")
{
$sql.= $operateur." meuble like '%$meublier%' ";
}
//$debut= (isset($_GET['debut'])) ? addslashes($_GET['debut']) : 0;
$sql.= ' ORDER BY prix ';
// LIMIT '.$debut.','.$nb_affichage_par_page;
$res = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
$total = mysql_num_rows($res);
$nb_pages = ceil($total / $nb_par_page);
echo $total;
//echo '.<p>'.$sql.'</p>';
//$page_en_cours = isset($_GET['page']) ? $_GET['page'] : 0;
//$page_affichee = ($page_en_cours + 1);
//$nb_pages = ceil($nb_nouvelles / $nb_nouv_par_page);
/**
Nous disposons maintenant de suffisament d'éléments pour créer notre barre de navigation.
Première chose à vérifier : avons-nous plusieurs pages, et au moins une ?
*/
if($nb_pages > 0)
{
/* On définit une variable qui contiendra les données de navigation */
$barre_nav = "";
/* Nous avons au moins une page : avons nous besoin d'une barre de navigation ? */
if($nb_pages > 1)
{
/**
Nous avons plusieurs pages: nous allons afficher successivement les liens vers
les pages précédentes s'il y en a, la page en cours et les liens vers les pages
suivantes. Nous aurons une barre sous la forme : 1 | 2 | 3 etc.. en liens clicables
sauf pour la page en cours dont nous mettrons le chiffre en gras
*/
if($page_en_cours > 0)
{
for($i = 0; $i < $nb_pages; $i++)
{
$p = $i + 1;
$lien = $url . $i.'&pays_combo=' .$pays_combo
.'&sub_ville=' .$sub_ville
.'&sub_type_achat=' .$sub_type_achat
.'&sub_type_logement=' .$sub_type_logement
.'&meublier=' .$meublier
.'&radionchk=' .$radionchk;
$barre_nav .= '<a href="'. $lien .'" title="page '. $p .'">'. $p .'</a> | ';
}
}
/**
On affiche la page en cours : notez le (+ 1) : pour les calculs, nous partons d'une
page 0 mais pour l'internaute, il est préférable de commencer à la page 1, donc on incrémente
*/
$barre_nav .= "<strong>". $page_affichee ."</strong>";
/* Enfin on affiche (s'il y a lieu) les liens vers les pages suivantes */
if(($page_affichee) < $nb_pages)
{
/* Il reste encore d'autres pages à afficher */
$nb_suivantes = $nb_pages - ($page_affichee);
for($j = ($page_affichee); $j < $nb_pages; $j++)
{
$p = $j + 1;
$lien = $url . $j.'&pays_combo=' .$pays_combo
.'&sub_ville=' .$sub_ville
.'&sub_type_achat=' .$sub_type_achat
.'&sub_type_logement=' .$sub_type_logement
.'&meublier=' .$meublier
.'&radionchk=' .$radionchk;
$barre_nav .= " | <a href=\"". $lien . $j ."\" title=\"page ". $p ."\">". $p ."</a>";
}
}
/* On peut définir en plus la situation dans une autre variable à afficher ailleurs */
$page_affichee = "Page ". $page_affichee ." sur un total de ". $nb_pages ." pages.";
}
else
{
/* Nous n'avons qu'une seule page, on peut se contenter d'afficher juste page 1/1 */
$barre_nav .= "page 1/1";
}
/**
On peut maintenant afficher notre page. On va commencer par récupérer les informations
On doit définir à partir de quelle nouvelle on doit récupérer les données dans la clause LIMIT.
*/
$debut = $page_en_cours * $nb_nouv_par_page;
$sql .= " LIMIT ". $debut .", ". $nb_par_page."";
$res = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
echo"<table width='600' border='0' cellpadding='0' cellspacing='2' bgcolor='#802A47'>
<tr>";
echo"<td width='50%' align='left' class='txt1'> <font color='#ECC600' size='2'><b>$total Annonce(s)</b></font></td>";
echo"<td align=\"right\" class='txt1'>";
echo"<font color='#ECC600' size='2'>Visualisation de: </font>";
echo"</td>";
echo"</td>";
echo"</tr>
</table>";
$k=0;
while ($row = mysql_fetch_array($res))
{
$k++ ;
$prix = $row["prix"];
$sub_type_achat = $row["type_achat"];
$sub_type_logement = $row["type_logement"];
$meuble = $row["meuble"];
$ville = $row["ville"];
$location = $row["location"];
$pays = $row["pays"];
$surface = $row["surface"];
$description = $row["description"];
$reference = $row["reference"];
$surle = $row["surle"];
$aproximite = $row["aproximite"];
$description= stripslashes($description);
$description= nl2br($description);
if( $k%2 == 0 )
$color = "#802A47";
else
$color = "#9C456A";
if( $k%2 == 0 )
$color = "#802A47";
else
$color = "#9C456A";
echo"<table width='600' border='0' cellpadding='0' cellspacing='2' bgcolor='#77111C' ><tr>
<td bgcolor='$color' align='left' width='367' class='txt1'> <font color='#F4F4F4'> <strong><u>Annonce N° $reference</u></strong><br>
<b>$type_achat à $ville ";
if ($surface !=0)
{
echo"de surface $surface m2<br>";
}
else
{
echo"<br>";
}
echo" $description </b><br>";
$sql_select2 = "select * from client where reference = '$reference' ";
$result2 = mysql_query($sql_select2);
$row = mysql_fetch_array($result2);
$reference = $row["reference"];
$tel = $row["teldomicile"];
$gsm1 = $row["gsm1"];
$gsm2 = $row["gsm2"];
if (($tel!="Pas de téléphone"))
{
if (!empty($tel))
{
echo"<font color='#FFFFFF'><b><u>Tél.</u>$tel</b></font>";
}
}
//echo"<br>";
if (($gsm1!="Pas de GSM"))
{
if (!empty($gsm1))
{
echo"<font color='#FFFFFF'><b><u>GSM 1.</u>$gsm1</b></font>";
}
}
echo"<br>";
echo"</font>
</td>
<td bgcolor='$color' width='106' align='center' class='txt1'><font color='#FFFFFF'> <b>Prix :<br>";
if ($prix != 0)
echo"$prix</b></font></td>";
else
echo"N.D</b></font></td>";
echo"</tr>
</table>";
echo "<table align=\"center\" width=\"479\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">";
echo"<tr>";
//echo"<td align=\"left\" class='menuc'>";
echo"</td>";
echo"</tr>";
echo"</table>";
// affichage de la barre de naviagtion
}
echo $barre_nav;
}
else echo "Recherche vide"; // a toi de mettre une belle phrase
?>
</body>
</head>
</html>
je te remercie infiniment Truc, un seul problème me reste puis je me tais lol !
quand je choisi le numéro de la page à selectionné, ce dernier s'ecrit une deuxieme fois dans la ligne de pagination
je te donne un exemple :
ma requete a renvoyée 312 reponses, donc j'ai 32 pages à visualiser , voila ma ligne de page jusqu'à présent :
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
après je choisi la 2ième page voila ma nouvelle ligne de pages :
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11
que dois-je faire ?!
[php]<HTML>
<head>
<title>Recherche Achat</title>
<body bgcolor=white text=black link=blue vlink=blue alink=blue>
<?php
include("gestion/config.php");
include ("fonctions.php");
$pays_combo = isset($_POST['pays_combo']) ? $_POST['pays_combo'] : (isset($_GET['pays_combo']) ? $_GET['pays_combo'] : 0);
$sub_ville = isset($_POST['sub_ville']) ? $_POST['sub_ville'] : (isset($_GET['sub_ville']) ? $_GET['sub_ville'] : 0);
$sub_type_achat = isset($_POST['sub_type_achat']) ? $_POST['sub_type_achat'] : (isset($_GET['sub_type_achat']) ? $_GET['sub_type_achat'] : 0);
$sub_type_logement = isset($_POST['sub_type_logement']) ? $_POST['sub_type_logement'] : (isset($_GET['sub_type_logement']) ? $_GET['sub_type_logement'] : 0);
$meublier = isset($_POST['meublier']) ? $_POST['meublier'] : (isset($_GET['meublier']) ? $_GET['meublier'] : 0);
$radionchk = isset($_POST['radionchk']) ? $_POST['radionchk'] : (isset($_GET['radionchk']) ? $_GET['radionchk'] : 0);
// reccupération varibles
/*$pays_combo=$_POST['pays_combo'];
$sub_ville=$_POST['sub_ville'];
$sub_type_achat =$_POST['sub_type_achat'];
$sub_type_logement =$_POST['sub_type_logement'];
$meublier=$_POST['meublier'];
$radionchk=$_POST['radionchk'];
$allcriteres=isset($_POST['allcriteres']) ? $_POST['allcriteres'] : ""; */
$finrequete="";
$k=0;
$nb_nouv_par_page = 1;
//nb_nouv_par_page = 1;
/* Nombre de nouvelles qui seront affichées sur chaque page */
//$url = "./pageparpage.php?page=";
/* On détermine quelle est la page qui est actuellement affichée */
$url = "./result1.php?page=";
$sql="select * from achat where location='".$radionchk."'";
$result = mysql_query($sql);
$nb_par_page = 10;
//$page_en_cours = isset($_GET['page']) ? ($_GET['page'] * $nb_pages) : 0;
//$page_affichee = ($page_en_cours + 1);
$page_en_cours = isset($_GET['page']) ? $_GET['page'] : 0;
$page_affichee = ($page_en_cours + 1);
//$operateur= ($allcriteres == "oui") ? " AND " : " OR ";
$operateur= " AND ";
if ($pays_combo != "0")
{
$sql.= $operateur." pays like '%$pays_combo%' ";
}
if ($sub_ville != "0")
{
$sql.= $operateur." ville like '%$sub_ville%' ";
}
if ($sub_type_achat != "0")
{
$sql.= $operateur." type_achat like '%$sub_type_achat%' ";
}
if ($sub_type_logement != "0")
{
$sql.= $operateur." type_logement like '%$sub_type_logement%' ";
}
if ($meublier != "0")
{
$sql.= $operateur." meuble like '%$meublier%' ";
}
//$debut= (isset($_GET['debut'])) ? addslashes($_GET['debut']) : 0;
$sql.= ' ORDER BY prix ';
// LIMIT '.$debut.','.$nb_affichage_par_page;
$res = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
$total = mysql_num_rows($res);
$nb_pages = ceil($total / $nb_par_page);
echo $total;
//echo '.<p>'.$sql.'</p>';
//$page_en_cours = isset($_GET['page']) ? $_GET['page'] : 0;
//$page_affichee = ($page_en_cours + 1);
//$nb_pages = ceil($nb_nouvelles / $nb_nouv_par_page);
/**
Nous disposons maintenant de suffisament d'éléments pour créer notre barre de navigation.
Première chose à vérifier : avons-nous plusieurs pages, et au moins une ?
*/
if($nb_pages > 0)
{
/* On définit une variable qui contiendra les données de navigation */
$barre_nav = "";
/* Nous avons au moins une page : avons nous besoin d'une barre de navigation ? */
if($nb_pages > 1)
{
/**
Nous avons plusieurs pages: nous allons afficher successivement les liens vers
les pages précédentes s'il y en a, la page en cours et les liens vers les pages
suivantes. Nous aurons une barre sous la forme : 1 | 2 | 3 etc.. en liens clicables
sauf pour la page en cours dont nous mettrons le chiffre en gras
*/
if($page_en_cours > 0)
{
for($i = 0; $i < $nb_pages; $i++)
{
$p = $i + 1;
$lien = $url . $i.'&pays_combo=' .$pays_combo
.'&sub_ville=' .$sub_ville
.'&sub_type_achat=' .$sub_type_achat
.'&sub_type_logement=' .$sub_type_logement
.'&meublier=' .$meublier
.'&radionchk=' .$radionchk;
$barre_nav .= '<a href="'. $lien .'" title="page '. $p .'">'. $p .'</a> | ';
}
}
/**
On affiche la page en cours : notez le (+ 1) : pour les calculs, nous partons d'une
page 0 mais pour l'internaute, il est préférable de commencer à la page 1, donc on incrémente
*/
$barre_nav .= "<strong>". $page_affichee ."</strong>";
/* Enfin on affiche (s'il y a lieu) les liens vers les pages suivantes */
if(($page_affichee) < $nb_pages)
{
/* Il reste encore d'autres pages à afficher */
$nb_suivantes = $nb_pages - ($page_affichee);
for($j = ($page_affichee); $j < $nb_pages; $j++)
{
$p = $j + 1;
$lien = $url . $j.'&pays_combo=' .$pays_combo
.'&sub_ville=' .$sub_ville
.'&sub_type_achat=' .$sub_type_achat
.'&sub_type_logement=' .$sub_type_logement
.'&meublier=' .$meublier
.'&radionchk=' .$radionchk;
$barre_nav .= " | <a href=\"". $lien . $j ."\" title=\"page ". $p ."\">". $p ."</a>";
}
}
/* On peut définir en plus la situation dans une autre variable à afficher ailleurs */
$page_affichee = "Page ". $page_affichee ." sur un total de ". $nb_pages ." pages.";
}
else
{
/* Nous n'avons qu'une seule page, on peut se contenter d'afficher juste page 1/1 */
$barre_nav .= "page 1/1";
}
/**
On peut maintenant afficher notre page. On va commencer par récupérer les informations
On doit définir à partir de quelle nouvelle on doit récupérer les données dans la clause LIMIT.
*/
$debut = $page_en_cours * $nb_nouv_par_page;
$sql .= " LIMIT ". $debut .", ". $nb_par_page."";
$res = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
echo"<table width='600' border='0' cellpadding='0' cellspacing='2' bgcolor='#802A47'>
<tr>";
echo"<td width='50%' align='left' class='txt1'> <font color='#ECC600' size='2'><b>$total Annonce(s)</b></font></td>";
echo"<td align=\"right\" class='txt1'>";
echo"<font color='#ECC600' size='2'>Visualisation de: </font>";
echo"</td>";
echo"</td>";
echo"</tr>
</table>";
$k=0;
while ($row = mysql_fetch_array($res))
{
$k++ ;
$prix = $row["prix"];
$sub_type_achat = $row["type_achat"];
$sub_type_logement = $row["type_logement"];
$meuble = $row["meuble"];
$ville = $row["ville"];
$location = $row["location"];
$pays = $row["pays"];
$surface = $row["surface"];
$description = $row["description"];
$reference = $row["reference"];
$surle = $row["surle"];
$aproximite = $row["aproximite"];
$description= stripslashes($description);
$description= nl2br($description);
if( $k%2 == 0 )
$color = "#802A47";
else
$color = "#9C456A";
if( $k%2 == 0 )
$color = "#802A47";
else
$color = "#9C456A";
echo"<table width='600' border='0' cellpadding='0' cellspacing='2' bgcolor='#77111C' ><tr>
<td bgcolor='$color' align='left' width='367' class='txt1'> <font color='#F4F4F4'> <strong><u>Annonce N° $reference</u></strong><br>
<b>$type_achat à $ville ";
if ($surface !=0)
{
echo"de surface $surface m2<br>";
}
else
{
echo"<br>";
}
echo" $description </b><br>";
$sql_select2 = "select * from client where reference = '$reference' ";
$result2 = mysql_query($sql_select2);
$row = mysql_fetch_array($result2);
$reference = $row["reference"];
$tel = $row["teldomicile"];
$gsm1 = $row["gsm1"];
$gsm2 = $row["gsm2"];
if (($tel!="Pas de téléphone"))
{
if (!empty($tel))
{
echo"<font color='#FFFFFF'><b><u>Tél.</u>$tel</b></font>";
}
}
//echo"<br>";
if (($gsm1!="Pas de GSM"))
{
if (!empty($gsm1))
{
echo"<font color='#FFFFFF'><b><u>GSM 1.</u>$gsm1</b></font>";
}
}
echo"<br>";
echo"</font>
</td>
<td bgcolor='$color' width='106' align='center' class='txt1'><font color='#FFFFFF'> <b>Prix :<br>";
if ($prix != 0)
echo"$prix</b></font></td>";
else
echo"N.D</b></font></td>";
echo"</tr>
</table>";
echo "<table align=\"center\" width=\"479\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">";
echo"<tr>";
//echo"<td align=\"left\" class='menuc'>";
echo"</td>";
echo"</tr>";
echo"</table>";
// affichage de la barre de naviagtion
}
echo $barre_nav;
}
else echo "Recherche vide"; // a toi de mettre une belle phrase
?>
</body>
</head>
</html>[/php]