Pirkoa Posted March 20, 2012 Report Share Posted March 20, 2012 Bonjour à toutes et à tous !Pour mon premier post, je vous poste un script php (pour ceux trouvant le JS trop difficile) vous permettant d'afficher la playlist en cours en fonction de l'heure qu'il est !Vous pouvez aussi choisir votre fuseau horaire !Attention, l'heure utilisée est celle du serveur donc ceux qui ont un serveur hébergé aux USA auront l'heure des USA etc...Mon serveur est hébergé aux USA donc avecc ce script, j'ai l'heure française.Assez parlé voici le script ! Il se compose de deux pagesPage n°1<?php//On initialise le fuseau horaire$city["GMT"] = 1.0;//GMT +1$city["actualDST"] = 0.0; //Heure d'été ou d'hiver (1/0)$gmt_diff = $city["GMT"]+$city["actualDST"]; //Pour calculer le fuseau horaire$city_time = time()+($gmt_diff*3600); //On initialise l'heure $currentheure = gmdate("H"); //On mets les heures dans une variable $currentminutes = gmdate("i"); //On mets les minutes dan une variable $currentjour = gmdate("w"); //On mets le jour dans une variable (0 pour dimanche ... 6 pour samedi)if($currentheure >= 0 AND $currentheure < 5) //Si il est entre minuit et 5h{ $message = "Ca bouge sur Ezur";// Le message sera "Ca bouge sur Ezur"}elseif($currentheure >= 5 AND $currentheure < 8 AND $currentminutes < 45) //Si il est entre 5h et 7h45{ $message = "Aven Actuel : Tous les hits du moment";}elseif($currentheure >= 7 AND $currentheure < 8 AND $currentminutes >= 45) //Si il est entre 7h45 et 8h{ $message = "Les deux minutes du peuple !";}elseif($currentheure >= 7 AND $currentheure <= 8 AND ($currentminutes >= 45 OR $currentminutes <=15) AND ($currentjour == 0 OR $currentjour == 3 OR $currentjour == 6)) // Si il est entre 7h45 et 8h15 ET que le jour est soit un samedi, dimanche ou mercredi{ $message = "Les deux minutes du peuple !";}elseif($currentheure >= 8 AND $currentheure <= 11 AND $currentminutes < 30){ $message = "Aven Actuel : Tous les hits du moment";}elseif($currentheure >= 11 AND $currentheure <= 13){ $message = "Détendez-vous avec Eden Eternews";}elseif($currentheure >= 13 AND $currentminutes > 30 AND $currentheures < 15){ $message = "Aven Actuel : Tous les hits du moment";}elseif($currentheure == 15 AND $currentminutes >= 0 AND $currentminutes < 15){ $message = "Le deux minutes du peuple !";}elseif(($currentjour == 3 OR $currentjour == 6 OR $currentjour == 0) AND $currentheure >= 16 AND $currentheure < 17){ $message = "J-music !";}elseif($currentheure >= 15 AND $currentheure < 19){ $message = "Aven Actuel : Tous les hits du moment";}elseif($currentheure >= 19 AND $currentheure < 20){ $message = "Musiques de jeux !";}elseif($currentheure >= 20 AND $currentheure < 23){ $message = "Aven Actuel : Tou les hits du moment";}elseif($currentheure >= 23 AND $currentheure < 24){ $message = "Ca bouge sur Ezur !";}else //On s'assure que si y'a un problème, ça renvoie erreur.{ $message = "Erreur";}echo $message;?>Ne copiez pas ce code bêtement car, premièrement, il est adapté pour mes playlists et deuxièmement, vous ne savez sûrement pas comment il marche !Donc tout ce que je fais sont des comparaisonsIl y a plusieurs variables$currentheure qui est l'heure qu'il est$currentminutes qui sont les minutes$currentjour qui est le jour (sous forme numérique : 0 = dimanche et 6 = samedi)Ensuite pour ce qui est des comparaisons, elles se font entre les parenthèses je vous invite à suivre ce guide clair et simple pour ce qui est du langage http://www.siteduzer....html#ss_part_1Ensuite une fois que vous avez fini ça, il suffit de faire un "include" dans votre page php à l'endroit voulu.sur la deuxième page (généralement index.php) il vous suffit de rajouter<?php include 'mapagen1.php' ?>Et ça se fera tout seul.Merci à vous, je suis ouvert à toutes suggestions.Belle journée et beau week-end musicaux.Pirkoa Link to comment Share on other sites More sharing options...
Logan Posted March 20, 2012 Report Share Posted March 20, 2012 Merci du Partage :D Link to comment Share on other sites More sharing options...
Pirkoa Posted March 20, 2012 Author Report Share Posted March 20, 2012 De rien ;)Si vous avez des questions / remarques, je vous écoute !Pirkoa Link to comment Share on other sites More sharing options...
FRame34 Posted March 20, 2012 Report Share Posted March 20, 2012 Parfois, la fonction gmdate() ne fonctionne pas et il faut utiliser time(). C'est l'heure du serveur qui est utilisé par contre. Link to comment Share on other sites More sharing options...
Pirkoa Posted March 20, 2012 Author Report Share Posted March 20, 2012 Oui dans ce cas la c'est embêtant mais pour le moment, ça marche donc... Profitons-en ;)Pirkoa Link to comment Share on other sites More sharing options...
Yoan78 Posted March 22, 2012 Report Share Posted March 22, 2012 Merci du partage, ça peut toujours servir ! :) Link to comment Share on other sites More sharing options...
tydoo Posted March 23, 2012 Report Share Posted March 23, 2012 Bonjour :)Le code est bon mais bien trop lourd ^^Tout ton code sur l'heure n'est pas la peine. time() suffit. C'est le code php de l'heure du serveur. Les serveur apache on un module externe pour les calcule d'heure, donc ton code php est déja exécuter avant meme que tu initialise time() ;)Ensuite, il faut que tu disocie les code erreur et les echo des résultats, sinon il se peut que tu ne t'y retrouve plus et que ca te plante tout ^^Pour ton code, il faut mieux ca :$message1 = 'contenue1';$message2 = 'contenue2';if (LOL) {echo $message1;}elseif (LOL2) {echo $message2;}queif (LOL) {echo 'contenue1';}elseif (LOL2) {echo 'contenue2;}Autre choses aussi ^^ Utilise plutpôt le " && " que le " AND ". Comme utilise plutôt le " || " que le " OR ". Certain serveur mettend plus de temps a comprendre le AND que le && ^^Le tableau récapitulatif des instructionsVoilou petit conseil pour tes prochain dév ;) Sinon j'aime beaucoup la proposition, ++ pour toi ;) Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.