11-Création de Mon site
Création de Mon site
Les prérequis sont d'avoir installer le serveur PHP et le communication avec les modules.
Lecture des données:
Le fonctionnement est le suivant:
Mon serveur PHP va lire les données dans un fichier texte qui se trouve dans le répertoire /run/shm afin de prendre les valeurs des modules
Puis il va utiliser un fichier de configuration pour mettre les informations d'unité et de localisation.
Voici le script php:
<!DOCTYPE html>
<html lang="fr">
<head>
<title>Ma domotique</title>
<meta name="viewport" content="width=device-width, user-scalable=no">
<meta charset="iso 8859-1">
<meta http-equiv="refresh" content="30" >
<link rel="shortcut icon" href="home.ico">
<link rel="stylesheet" href="/mobile/jquery.mobile-1.3.2.min.css">
<script src="/mobile/jquery.js"></script>
<script src="/mobile/jquery.mobile-1.3.2.min.js"></script>
</head>
<body>
<div data-role="page">
<div data-role="header">
<h1>Ma Domotique</h1>
</div><!-- /entete -->
<div data-role="content">
<p>
<?php
function lectxml($para,$para1) {
$dom = new DomDocument;
$dom->load("module.xml");
$nodes=$dom->getElementsByTagName($para) ;
if ($nodes->length!=0) {
$vnode = $dom->getElementsByTagName($para)->item(0);
$liste = $vnode->getElementsByTagName($para1);
foreach($liste as $val)
echo strtr($val->firstChild->nodeValue, get_html_translation_table(HTML_ENTITIES, ENT_QUOTES)); //carac avec accent
return true;
}else{
return false;
}
}
if (!$fp = fopen("/run/shm/hello.txt","r")) {
echo "Echec de l'ouverture du fichier";
exit;
}
else {
while(!feof($fp)) {
// On récupère une ligne
$Ligne = fgets($fp,255);
$ID = substr($Ligne, 1, 4); //recherche ID
$Indent= $ID;
$valret=lectxml($ID,"Texte");
if ($valret==true) {
$ID = substr($Ligne, 0, 6); //recherche ID
$Ligne = str_replace($ID,"",$Ligne); // Supprime ID
echo $str;
echo $Ligne;
echo " ";
lectxml($Indent,"Unite");
// On stocke l'ensemble des lignes dans une variable
$Fichier .= $Ligne;
echo "<br/>";
}
}
fclose($fp); // On ferme le fichier
}
?>
</p>
</div>
</div>
</body>
</html>
Voici le fichier de configuration module.xml
<?xml version="1.0" encoding="iso-8859-1"?>
<Recepteur>
<ID60>
<Numeros>#ID60#</Numeros>
<Type>IN</Type>
<Genre>ANA</Genre>
<Emin>-55</Emin>
<Emax>125</Emax>
<Unite>°C</Unite>
<Mesure>Temperature</Mesure>
<Texte>Température Garage </Texte>
</ID60>
<ID61>
<Numeros>#ID61#</Numeros>
<Type>IN</Type>
<Genre>ANA</Genre>
<Emin>-55</Emin>
<Emax>125</Emax>
<Unite>°C</Unite>
<Mesure>Temperature</Mesure>
<Texte>Température Jardin </Texte>
</ID61>
<ID62>
<Numeros>#ID62#</Numeros>
<Type>IN</Type>
<Genre>ANA</Genre>
<Emin>-55</Emin>
<Emax>125</Emax>
<Unite>%H</Unite>
<Mesure>Hygrométrie</Mesure>
<Texte>Hygrométrie Jardin </Texte>
</ID62>
<ID63>
<Numeros>#ID63#</Numeros>
<Type>IN</Type>
<Genre>ANA</Genre>
<Emin>-55</Emin>
<Emax>125</Emax>
<Unite>°C</Unite>
<Mesure>Hygrométrie</Mesure>
<Texte>Température Salon </Texte>
</ID63>
<ID64>
<Numeros>#ID64#</Numeros>
<Type>IN</Type>
<Genre>ANA</Genre>
<Emin>-55</Emin>
<Emax>125</Emax>
<Unite>hPa</Unite>
<Mesure>Hygrométrie</Mesure>
<Texte>Pression Atmosphérique </Texte>
</ID64>
</Recepteur>
Les fichiers de l'ensemble de mon site sont à installer dans le répertoire /var/www/.
Vous devriez avoir dans votre répertoire:
index.php
module.xml
home.ico
et le répertoire mobile.
Téléchargement ici
Écriture des commandes:
L'écriture des commandes se fait avec la dernière version du programme de communication avec les modules. Le serveur va créer un fichier avec les commandes à envoyer.
Mise à jour des fichiers serveur php à copier dans le répertoire /var/www/. Téléchargement ici.
A ce jour, il faut taper la commande pour l'envoyer.
Plus besoins de taper la commande:
Mise à jour des fichiers serveur php à copier dans le répertoire /var/www/. Téléchargement ici.
Accès aux commandes par mot de passe:
Mise à jour du serveur php. Mise à jour des fichiers serveur php à copier dans le répertoire /var/www/. Voici l'ensemble des fichiers ici.
Mise à jour 06/12/2014
Créé avec HelpNDoc Personal Edition: Générateur complet de livres électroniques Kindle