PHP

L’utilité du PHP est par exemple pour les traitements sur les fichiers, ici récupération des fêtes du jour dans un tableau JSON et traitement dans une page HTML du résultat.

 <?  
  ///////////////////////////////////////////////////////////////////////////////  
  // Version: 2.0 - AndroLogiciels - D'après Jérôme DESMOULINS         //  
  // Description:                               //  
  //  Ce script affiche, la ou les fêtes du jour               //  
  //  Pour l'utiliser il suffit de placer include("fete.php"); dans un script //  
  //  Attention: le fichier fete.txt doit se trouver dans le repertoire    //  
  // Adaptation (05/2014) andrologiciels :                   //  
  // Retourne un objet JSON contenant le tableau des fêtes du jour      //  
  ///////////////////////////////////////////////////////////////////////////////  
  //-- Récupèration de la date actuelle  
  $jour=date("d");  
  $mois=date("m");  
  $tab=array();  
  $tabtmp=array();  
  $nbfete=0;  
  //-- Recherche de cette date dans le fichier de données  
  $fp=fopen("fete.txt","r");  
  while ( ! feof($fp) )  
  { $ligne=fgets($fp,255);  
   //-- On extrait le prénom fêté  
   $pos=strpos($ligne,';');  
   $prenom=substr($ligne,0,$pos);  
   $ligne=substr($ligne,$pos+1,strlen($ligne)-$pos);  
   //-- Le jour de cette fête  
   $pos=strpos($ligne,';');  
   $jourtrouve=substr($ligne,0,$pos);  
   //-- Le mois de cette fête  
   $moistrouve=substr($ligne,$pos+1,strlen($ligne)-$pos-2);  
   //-- Si on la trouve, on affiche la fête du jour  
   if (($jour==$jourtrouve) && ($mois==$moistrouve))  
   { $nbfete=++$nbfete;  
    $tabtmp["fete"]=$prenom;  //-- Contient la fête trouvée  
    array_push($tab, $tabtmp); //-- Ajoute à la liste des fêtes du jour la fête trouvée  
    unset($tabtmp);       //-- efface le tableau temporaire  
   }  
  }  
  fclose($fp);  
  $tabtmp["nbfete"]=$nbfete;  
  $tabtmp["tabfete"]=$tab;  
  $jsonstring = json_encode($tabtmp);  
  echo $jsonstring; //-- Retourne le tableau JSON des fêtes du jour  
  //-- $jsonstring = {"nbfete":2,"tabfete":[{"fete":"Honore"},{"fete":"Weena"}]}  
 ?>  

Le fichier HTML :

 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">  
 <html>  
  <head>  
  <meta content="text/html; charset=ISO-8859-1" http-equiv="content-type">  
  <title>Affiche fête</title>  
 </head>  
 <script>  
 function DemandeFete()  
 {var request = new XMLHttpRequest();  
  request.onreadystatechange = function()  
  {if (this.readyState == 4) {  
   if (this.status == 200) {  
     if (this.responseText != null) {  
       var sFete=this.responseText;  
       //-- Conversion en doc HTML            
       var doc = document.implementation.createHTMLDocument("example");  
       doc.documentElement.innerHTML = sFete;  
       var resultat=doc.body.textContent;  
       resultat=resultat.trim();  
       //-- Traitement du JSON  
       var res="Pas de fête";  
       var json = JSON.parse(resultat);  
       var nbfete=json.nbfete;   
       for (var i = 0; i < nbfete; i++)  
        {if (res==("Pas de fête"))  
                      res=json.tabfete[i].fete;                 
                  else  
                      res=res+", "+json.tabfete[i].fete;                    
                  }  
                //-- Affichage du résultat  
       document.ajax.dyn.value= res;  
             }}}}  
       //-- Url d'obtention de(s) fête(s) retourne un tableau JSON de strucuture   
       //-- {"nbfete":2,"tabfete":[{"fete":"Honore"},{"fete":"Weena"}]}  
    request.open("GET", "http://andrologiciels.is-great.net/testfete.php", false);  
    request.send(null);}    
 </script>  
 <body onLoad="DemandeFete()"  
    style="background-color: rgb(255, 255, 204); color: rgb(0, 0, 0);">  
 <FORM name="ajax" method="POST" action="">                 
  <p></p>  
  <p>Fête du jour :   
   <input type="text" name="dyn" size="32" value="">  
  </p>  
 </FORM>  
 </body>  
 </html>  

Manipulation de dates en PHP :

 <?php   
 //-- additionne nb jours à une date  
 $nb = $_GET["nb"]-0;  
 $maDate = date('d/m/Y', strtotime($nb.' day'));   
 $jour=date('d', strtotime($nb.' day'));  
 $mois=date('m', strtotime($nb.' day'));  
 echo '<br>Date du jour = '.date('d/m/Y').'</br>';  
 echo '<br>Date '.$nb.'='.$maDate.'</br>';  
 echo '<br>'.$jour.'/'.$mois.'</br>';  
 ?>  

Permet en passant en paramétre dans l’URL le nombre de jours (positif, négatif ou nul) de se positionner dans le calendrier. Exemple : testdate.php?nb=-1 retournera :

 Date du jour = 30/05/2014  
 Date -1=29/05/2014  
 29/05  

Divers présentation de dates en Français et en Anglais :

//-- Recherche de l'année
$anactu=date('Y', strtotime($nb.' day'));

//-- Récupération du jour et du mois actuel moins ou plus le nombre de jours voulu
if ($j==-1 || $m==-1)
   {$jour=date('d', strtotime($nb.' day'))-0;
    $mois=date('m', strtotime($nb.' day'))-0;
    $timedate = $mois.'/'.$jour.'/'.$anactu;
    }
else
    {//-- Formatage de la date désirée   
     $timedate = $mois.'/'.$jour.'/'.$anactu;
    }
//-- Formattage de la date en fonction de la langue
if ($lg=='fr')
   {
    setlocale(LC_TIME, "fr_FR");
    $jjour=strftime("%A",strtotime($timedate)); //-- %a = abrége Dim à Sam
    $mmois=strftime("%B",strtotime($timedate)); //-- %b = abrégé Jan à Dec
    $ddate=$jjour.' '.$jour.' '.$mmois;
   }
else 
   {
    setlocale(LC_TIME, "en_EN");
    $jjjour=strftime("%A",strtotime($timedate)); //-- %a = abrége Dim à Sam
    $jjour=date('jS', strtotime($timedate));
    $mmois=strftime("%B",strtotime($timedate)); //-- %b = abrégé Jan à Dec
    $ddate=$jjjour.' '.$jjour.' '.$mmois;
   }
Publicité

Votre commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l’aide de votre compte WordPress.com. Déconnexion /  Changer )

Photo Facebook

Vous commentez à l’aide de votre compte Facebook. Déconnexion /  Changer )

Connexion à %s

Articles récents
Commentaires récents
Catégories
Archives
%d blogueurs aiment cette page :