Sur mon site de citations, le visiteur peut les lire, en vrac, au hasard dans la bdd.
Sauf que le hasard ne fait pas toujours bien les choses.
J'affiche les citations par 4 mais sur la page qui suit, je peux en retrouver une des 4 précédentes !
Je sais, c'est le hasard, mais si elle se répétait toutes les 8 ou 10 pages, ça irait, mais parfois c'est 3 fois en 7 ou 8 pages !
<?php
mysql_connect("xxxxxxxxxxxxxxxx"); //connexion à la base
mysql_select_db("citation"); // Sélection de la base citation
// On est connectés, on peut travailler sur la BDD
$page = isset($_GET['page']) ? $_GET['page'] : '';
// Prepare le requete MySql
$requete = "SELECT citateurs_celebres.nom, citateurs_celebres.prenom, citations_celebres.citation
FROM citateurs_celebres
LEFT JOIN citations_celebres
ON citateurs_celebres.id = citations_celebres.numcitateur";
$ret = mysql_query($requete);
// Variable nombre d'enreg par page
$limit=4;
if($debut==""){$debut=0;}
$debut=$page*$limit;
// Compte le nombre de champ
$nb_total=mysql_num_rows($ret);
// Requete
$limite=mysql_query("$requete limit $debut,$limit");
//Affichage le contenu de votre table
//avec une limite, dans l'exemple $limit est à 4
$limit_str = "LIMIT ". $page * $limit .",$limit";
$result = mysql_query("
SELECT citateurs_celebres.nom, citateurs_celebres.prenom, citations_celebres.citation, citations_celebres.id
FROM citateurs_celebres LEFT JOIN citations_celebres ON citateurs_celebres.id = citations_celebres.numcitateur
ORDER BY rand()
ASC $limit_str");
while ($row =mysql_fetch_array ($result) )
{
// affiche les different champs
echo"$row[citation]";
echo"<br />";
?>
