Se connecter / S'enregistrer
Votre question

PHP MYSQL Affichage resultats selon heure et heure de nuit

Tags :
  • MySQL
  • Programmation
Dernière réponse : dans Programmation
11 Décembre 2007 01:53:09

Bonjour, c'est tres urgent pour une radio
Je doit imperativement afficher les résultats de la base de donnee selon l'heure, tout marche bien dansla journée sauf la nuit

de 00h à 23 heure, aucun probleme
mais de 23 heure à 07heure, gros prob

Aucun résultats sort de la base, il prend pas ne compte le jour suivant,

voici mon code PHP/Mysql
  1. <?php
  2. $heure=date("G" );
  3. $commaff= mysql_query("SELECT * FROM ".T_ANIMATEUR." WHERE heuredebut<='$heure' AND heurefin>='$heure'+1 LIMIT 1" );
  4.  
  5. if (mysql_num_rows($commaff) == 0)
  6.  
  7. echo '<div align="center"><a href="playlist.php"><img src="images/playlis.png" alt="Ecouter la Playlist de Mona FM" width="250" height="176" border="0" /></a></div>';
  8.  
  9. while ($donnees = mysql_fetch_array($commaff))
  10. {
  11. $jour=date("w" );
  12. $jourbd=$donnees['jour'];
  13. $journee = explode(",", $jourbd);
  14.  
  15. $max=45;
  16. $chaine=$donnees['bio'];
  17.  
  18. if(strlen($chaine)>=$max){
  19. $chaine=substr($chaine,0,$max);
  20. $espace=strrpos($chaine," " );
  21.  
  22. if($espace)
  23. $chaine=substr($chaine,0,$espace);
  24.  
  25. $chaine .= ' ...';
  26. }
  27.  
  28. $numero=$donnees[0];
  29.  
  30. for($i=0;$i<sizeof($journee);$i++)
  31. {
  32.  
  33. if($jour==$journee[$i]){
  34. echo'
  35. '.stripslashes ($donnees['nomprenom']).'
  36.  
  37. ';
  38. }
  39. }
  40. }
  41. ?>

Autres pages sur : php mysql affichage resultats heure heure nuit

11 Décembre 2007 04:17:22

peut etre qu'un petit
  1. $heureFin = ($heure + 1) % 24;

avant de l'injecter dans la requete te permettra de garder une heure cohérente à minuit dans un premier temps.
Ensuite je ne vois pas pourquoi ça ne marche pas entre minuit et 7h.
11 Décembre 2007 17:42:31

Merci pour ta réponse, ca ne marche pas, mon champ mysql est de type INT 11,

j'ai fait ceci en php

$commaff= mysql_query("SELECT * FROM ".T_ANIMATEUR." WHERE heuredebut<='$heure' AND heurefin>='$heure'+1 % 24");

Mais non, rien ne donne,

Merci de ton aide
Contenus similaires
Pas de réponse à votre question ? Demandez !
11 Décembre 2007 18:08:44

% a une priorité supérieur au +, utilise les ()
11 Décembre 2007 19:20:44

non, ca donne rien, j'ai tout essayé, mais impossible,
Je suis dans un sale pétrain,

Peut tu me filer un coup de main directement par MSN, je te revaudrais ca,
Autrement, plus long mais par le forum

Merci encore
12 Décembre 2007 19:36:17

désolidarise tes traitements : prépare ton heure dans une variable et ensuite injecte la dans ta requete sql.

ensuite, "ça donne rien" n'est pas tres explicite : donne nous le message d'erreur, un exemple des données que tu as en base, une trace effectuée dans ton script...
Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS