Affichage aléatoire de texte en fonction d'une date
Posté : 20 juin 2006, 10:42
Bonjour à tous.
Je voudrais afficher des infos de ma base de façon aléatoire sur la page d'accueil de mon site en fonction d'une date.
Pour ceux qui avaient un peu suivi mes "essais" j'ai créé un agenda, qui affiche les événements du mois en cours.
Sur la page d'accueil, je voudrais afficher les événements enregistrés dans ma base qui sont >= au mois en cours.
J'ai utilisé la fonction rand()
Mais j'ai un souci :
Lorsque je fais la requête dans la base en incluant la variable
Alors que si j'enlève ce filtre de sélection, les valeurs s'affichent...mais pas comme je le voudrais : c'est à dire, TOUTES les dates à partir du mois en cours....
Je vous donne un bout de mon code, si quelqu'un a une idée pour m'éclairer..... merci !
Un order by ?
Limit ?
J'avoue que je suis perplexe

Je voudrais afficher des infos de ma base de façon aléatoire sur la page d'accueil de mon site en fonction d'une date.
Pour ceux qui avaient un peu suivi mes "essais" j'ai créé un agenda, qui affiche les événements du mois en cours.
Sur la page d'accueil, je voudrais afficher les événements enregistrés dans ma base qui sont >= au mois en cours.
J'ai utilisé la fonction rand()
Mais j'ai un souci :
Lorsque je fais la requête dans la base en incluant la variable
$mois = date('n') ; rien ne s'affiche.Alors que si j'enlève ce filtre de sélection, les valeurs s'affichent...mais pas comme je le voudrais : c'est à dire, TOUTES les dates à partir du mois en cours....
Je vous donne un bout de mon code, si quelqu'un a une idée pour m'éclairer..... merci !
<?php
//recherche des sessions existantes //
mysql_select_db($database, $connexion);
$queryh = "SELECT * FROM sessions, cours WHERE sessions.ID_cours=cours.ID_cours" ;
$resulth = mysql_query($queryh) or die('Erreur SQL : '.mysql_error());
$cours = mysql_num_rows($resulth);
$hasard = rand(1,$cours);
//Affichage du bandeau
$query = "SELECT * FROM sessions, cours WHERE sessions.ID_cours=cours.ID_cours AND sessions.ID_session = ".$hasard." ";
// Execute la requete precedente
$result = mysql_query($query) or die('Erreur SQL : '.mysql_error());
while ($row_session = mysql_fetch_array($result)){
// affichage des sessions agenda //
<?
}
?>
Pour l'affichage du mois en cours :
//affichage du calendrier sur le mois en cours //
if(!isset($_GET['mois']))
$mois = date('n') ;
else
$mois = $_GET['mois'];
//recherche des sessions existantes //
mysql_select_db($database, $connexion);
$query_session = "SELECT * FROM sessions, cours WHERE sessions.ID_cours=cours.ID_cours AND (MONTH(date_debut) = $mois)
ORDER BY date_debut, horaires ASC ";
$session = mysql_query($query_session, $connexion) or die(mysql_error());
$row_session = mysql_fetch_assoc($session);
$totalRows_session = mysql_num_rows($session);
Il faut faire une jointure ?Un order by ?
Limit ?
J'avoue que je suis perplexe