La fête du jour ! La fête du jour !
Menu

La fête du jour !

9 janvier 2015 - DashScreen DashBoard
La fête du jour !

Voilà un petit module (facile) que j’ai rajouté sur mon DashScreen.

Comme cela, le matin je connais la fête (principal) du jour et c’est toujours sympa de souhaiter bonne fête à un collègue ou ami.

J’aurai pu choisir de faire une table SQL mais pour un truc simple je suis parti d’un fichier TXT. Ce fichier est fait de 366 lignes avec pour chaque ligne la fête du jour, le  jour et le mois le tout séparé par un « ; ».

Le fichier TXT de la fête du jour : FETES.txt

Donc la fonction va lire le fichier ligne par ligne. Va mettre pour chaque ligne les valeurs dans un tableau et ensuite vérifier si le jour et le mois sont le bon et dans ce cas la fonction affiche le texte Bonne Fête + le prénom. C’est simple !

Les différents fichiers:

Le fichier index.php : 

<br />
<div id="fete"></div>
<p>

Une simple balise DIV vide avec comme ID fete.

Le fichier style.css :

div#fete
{
left : 600px;
top : 130px;
position : absolute;
overflow : hidden;
background-color : rgba(0, 0, 0, 0);
color : #FFF;
font-weight : bold;
text-align : center;
font-size : 20px;
font-family : 'eraserregular';
}

La toujours pareil, on place (left et top) on positionne, toujours un fond transparent pour voir le tableau , on écrit en blanc en gras  au centre avec une police de 20px et avec la police Eraser.

Le fichier javascript.js :

var fete_timeout;

function fete ()
{
$.ajax({
async : false,
type: "GET",
url: "./ajax.php",
data: "block=fete",
success: function(html){
$("#fete").html(html);
}
});

fete_timeout = setTimeout("fete()", 3600000);
}

La fonction fête va appeler ajax.php toutes les heures pour faire une mise à jour.

Là il faut que je cherche une amélioration car le changement de fête ne se fait qu’une fois par jour à minuit. Il faudrait que la fonction  soit appelé que tous les jours à minuit.

Le fichier ajax.php :

if($block == 'fete'){
echo fete();
}

Si le nom de la variable $block passée par le fichier javascript = fete on écrit le résultat de la fonction fete() du fichier inc.php

Le fichier inc.php :

Il contient la fonction fete() qui en retour va passer la variable contenant le texte à afficher dans le DIV fête.

function fete () {

$jour=date("d");
$mois=date("m");
$fp=fopen("FETES.txt","r");
while ( ! feof($fp) )
{
$ligne=fgets($fp,255);
$mots=explode(';',$ligne);
$prenom=$mots[0];
$jourtrouve=intval($mots[1]);
$moistrouve=intval($mots[2]);
if (($jour==$jourtrouve) && ($mois==$moistrouve))
{
$html = '';

$html .='Bonne fête
';
$html .= $prenom;
}
}
fclose($fp);
return $html;
}

Dans un 1er temps définition le jour et le mois du jour.

Ouverture du fichier FETE.txt, parcours de toutes les lignes. Pour chaque ligne le prénom, le jour le mois sont mis dans un tableau ( explore(‘;’,$ligne);

Si la variable jour et la variable mois sont égales à la date du jour la variable html est créée.

A la fin fermeture du fichier et retour de la variable html pour affichage.

Et voilà la fête du jour à coté de l’heure : IMG_27712

Étiquettes :