de: deldoll
posté le: 14-01-2009 à 11:51:14
***.completel.net
J'ai fait une page php avec des données contenues dans 2 bases de données c'est au niveau de l'affichage que j'ai un petit souci. J'affiche les enregistrement 5 par 5 jusque là c'est OK avec en bas de page un précédent et suivant.
C'est le lien suivant qui me pose un problème comment lui dire de ne pas s'afficher quand il n'y a plus d'enregistrement car il continu et du coup on a des pages vides qui s'affiche
Voici mon code
<?php
// on se connecte à MySQL
$db = mysql_connect('', '', '');
// on sélectionne la base
mysql_select_db('',$db);
// si la demande de page (adresse http) est inférieure à 1 afficher toujours la page=1
if (isset($_GET['page']) && $_GET['page']>=1)
{}
else
$_GET['page']=1;
// affichage de 5 réponses et pour la page suivante 5+1
$limite_mysql=0+5*($_GET['page']-1);
$limite_page=5;
// on crée la requête SQL
$sql = "SELECT histmap_jointure.NUM_DEPART,IMG,CHEM_IMG,UPPER(departement) AS departement,
UPPER(auteurs) AS auteurs,annee,notice_carte,notice_ouvrage,cote_EMP,cotes_diverses,date_carte,date_notice
FROM histmap_donnees AS hd
INNER JOIN histmap_jointure ON hd.num_depart=histmap_jointure.NUM_DEPART GROUP BY 'num_depart'
ORDER BY 'departement' ASC Limit ".$limite_mysql.",".$limite_page;
// on envoie la requête
$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
// on envoie la requête
$html = "";
// on fait une boucle qui va faire un tour pour chaque enregistrement
while($data = mysql_fetch_assoc($req))
{
// on affiche les informations de l'enregistrement en cours
$html.= '<table border="1" cellspacing="0" cellpadding="0">';
$html.= '<tr align="justify">';
$html.= '<th width="400px"><img src=http://www.img/'.$data['IMG'].' /></th>';
$html.= '<th width="150px"><center><a href=TARGET="_blank">http://www.img/'.$data['CHEM_IMG'].'>'.$data['departement'].'</a></center>';
$html.= '<th width="800px" valign="top"><font color="#FF0000">Auteur :</font> '.$data['auteurs'].'
<br><font color="#FF0000">Date :</font> '.$data['annee'].'
<br><font color="#FF0000">Notice de la carte:</font> '.$data['notice_carte'].'';
if(empty($data['notice_ouvrage'])){}
else
$html.= '<br><font color="#FF0000">Notice de l\'ouvrage :</font> ' .$data['notice_ouvrage'];
if(empty($data['cote_EMP'])){}
else
$html.= '<br><font color="#FF0000">Cote :</font> ' .$data['cote_EMP'];
if(empty($data['cotes_diverses'])){}
else
$html.= ' ' .$data['cotes_diverses'];
if(empty($data['date_notice'])){}
else
$html.= '<br><font color="#FF0000">Date de la notice :</font> ' .$data['date_notice'];
$html.= '</tr>';
$html.= '</table>';
}
// on ferme la connexion à mysql
if ($_GET['page']!=1){
$html.= "<a href='test1.php?page=".($_GET['page']-1)."'>Précédent</a>";
}
$html.= "<a href='test1.php?page=".($_GET['page']+1)."'>Suivant</a>";
echo $html;
mysql_close();
?>
|