Bonjour a tous ,
Je travail sur un projet en ce moment (pour m'entrainer , je débute).

J'ai donc réussi a créer une pagination automatique du résultat d'une requète sql en suivant un tuto sur internet dont voici mon code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
<?php
try
{
$bdd = new PDO('mysql:host=localhost;dbname=dechetterie_npdc' , 'root' , '' ) ;
}
catch (Exception $e)
{
die('Erreur :' .$e->getMessage());
}
 
// --------------- Étape 2 -----------------
// On écrit les liens vers chacune des pages
// -----------------------------------------
 
// On met dans une variable le nombre de messages qu'on veut par page
$nombreDeMessagesParPage = 4; // Essayez de changer ce nombre pour voir :o)
// On récupère le nombre total de messages
$retour = $bdd->query('SELECT COUNT(*) AS nb_messages FROM npdc');
$donnees = $retour->fetch();
$totalDesMessages = $donnees['nb_messages'];
// On calcule le nombre de pages à créer
$nombreDePages  = ceil($totalDesMessages / $nombreDeMessagesParPage);
// Puis on fait une boucle pour écrire les liens vers chacune des pages
echo 'Page : ';
for ($i = 1 ; $i <= $nombreDePages ; $i++)
{
    echo '<a href="test3.php?page=' . $i . '">' . $i . '</a> ';
}
?>
 
</p>
 
<?php
 
 
// --------------- Étape 3 ---------------
// Maintenant, on va afficher les messages
// ---------------------------------------
 
if (isset($_GET['page']))
{
        $page = $_GET['page']; // On récupère le numéro de la page indiqué dans l'adresse (livreor.php?page=4)
}
else // La variable n'existe pas, c'est la première fois qu'on charge la page
{
        $page = 1; // On se met sur la page 1 (par défaut)
}
 
// On calcule le numéro du premier message qu'on prend pour le LIMIT de MySQL
$premierMessageAafficher = ($page - 1) * $nombreDeMessagesParPage;
 
$reponse = $bdd->query('SELECT * FROM npdc ORDER BY id DESC LIMIT ' . $premierMessageAafficher . ', ' . $nombreDeMessagesParPage);
 
while ($donnees = $reponse->fetch())
{
        echo '<p><strong>' . $donnees['adresse'] . '</strong> a écrit :<br />' . $donnees['ville'] . '</p>';
}
 
?>
Je voudrais maintenant obtenir la meme chose mais avec une requete à tri aléatoir du type :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
$reponse = $bdd->query('select * from (select * from npdc ) s order by rand()');
Je ne sais pas trop comment mis prendre , sur le code actuel , on fait une boucle et a chaque changement de page , on relance la requete en changeant les LIMIT ( enfin si j'ai bien compris);

Si vous avez une solution( un tuto , une idée de départ??) , j'ai pas mal chercher sur le web mais j'ai pas trouvé se que je voulais.

En vous remerciant.