Vous pouvez avoir l'utilité d'afficher, par exemple, le site d'un annuaire aleatoirement. Mais, si vous utilisez simplement la fonction rand(), l'entrée affiché changera à chaque rechargement de la page...
Mais, il est tout à fait possible de prendre une entrée aleatoire, et de l'afficher pour la journée:
Il vous faut tout d'abord, créer une base de données sur mysql, s'appellant par exemple, Citations, et ayant les champs
id (int, unique) et citation (varchar possible, mais longtext conseillé)
Code :
<?php include ("citation.php");
$date = date('d');
if ($date != $date2)
{
$connect = mysql_connect($serveur, $pseudo, $pass);
$requete = mysql_db_query($base,"select * from Citations ORDER BY rand() LIMIT 1" ,$connect);
$citation= mysql_fetch_array($requete);
$id = $citation['id'];
$msg = $citation['citation'];
$msg_fichier = "<?php \$date2 = $date;
\$id2 = $id;
?>";
$fichier = "citation.php";
$fp=fopen("$fichier","w+");
fwrite($fp, $msg_fichier);
}
if ($date == $date2)
{
$connect = mysql_connect($serveur, $pseudo, $pass);
$requete = mysql_db_query($base,"select * from Citations where id = '$id2'" ,$connect);
while ($citation = mysql_fetch_array ($requete))
{
$id = $citation['id'];
$msg = $citation['citation'];
}}
echo $msg;
?>
Le script fonctionne de la façon suivante:
Si la date contenue dans le fichier est différente de la date d'aujourd'hui, il cherche une entrée au hasard, et modifie le fichier avec l'id de l'entrée, et la date d'aujoud'hui.
Puis, il recupere l'id de l'entrée, et va chercher dans la base de données les informations de ce fichier.