Go Down

Topic: Interface domotique [ PHP ? ] (Read 1 time) previous topic - next topic

chicotore

Bonjours a tous,

J'ai enfin réussit a faire fonctionner ma partie PYTHON et ARDUINO pour mon projet "domotique" ! il ne me reste donc plus qu'a faire ma partie WEB maintenant .

Le but de cette partie WEB est pour le moment d'avoir 2 boutons: un bouton "Allumer" et un bouton "Eteindre" dans le but d'allumer ou d'éteindre (a distance ) une LED branché a un PC avec Python.

Le code python "observe" un fichier .txt sur mon FTP et quand il repère la variable "n" il envoit "n" a l'arduino qui le retraite comme eteindre la LED et quand python detecte "m" c'est l'inverse  :)

Je souhaite donc créer une interface WEB qui par le biais de ces deux boutons me permet d'éditer mon fichier .txt et de mettre "n" quand je click sur "éteindre" et "m" quand je click sur "allumer"

J'ai donc fait ce code en PHP qui fonctionne:

Code: [Select]
<?php
    $fichier
="g.txt"// Nom du fichier à modifier

        
if(isset($_POST['boutton'])) {    
        
//if(is_file($fichier)) unlink($fichier); //si le fichier existe :  suppression du fichier pour le remplacer par le nouveau avec les nouveau éléments
        
$ouverture=fopen("$fichier","w"); // Création du nouveau fichier et ouverture du fichier avec le mode w on ouvre le fichier qu'en écriture et unlink devient inutile car le fichier est vidé automatiquement
        
fwrite($ouverture,"$_POST[modif]"); // ecriture
        
fclose($ouverture); // fermeture du fichier
        
echo '<h2>Modification effectue</h2>'// Affichage validation
        
}

?>

    <form method="post" action=""> <!-- j'ai modifié action pour qu'il soit compatible peut importe le nom de la page-->
    <textarea name="modif" rows="10" COLS="10"><?php // fait attention de bien collé les déclaration php au balises html sinon ca ecria les espace dans ton fichier
    
if(is_file($fichier)) echo file_get_contents($fichier); 
?>
</textarea>
    <br/><input type="submit" name="boutton" value="Modifier">
    </form>


Visible ici:  http://modelismebychico.free.fr/test.php

Cependant je n'est qu'un bouton et c'est a moi de taper la variable .....

J'ai donc bidouiller pour faire ce code:

Code: [Select]
<html>
<body>
<font size="2" face="Arial">Allumer</font>
<?php
    $fichier
="g.txt"// Nom du fichier à modifier

        
if(isset($_POST['boutton'])) {    
        
//if(is_file($fichier)) unlink($fichier); //si le fichier existe :  suppression du fichier pour le remplacer par le nouveau avec les nouveau éléments
        
$ouverture=fopen("$fichier","w"); // Création du nouveau fichier et ouverture du fichier avec le mode w on ouvre le fichier qu'en écriture et unlink devient inutile car le fichier est vidé automatiquement
        
fwrite($ouverture,"m"); // ecriture
        
fclose($ouverture); // fermeture du fichier
        
echo '<h2>Modification effectue</h2>'// Affichage validation
        
}
?>


    <form method="post" action=""> <!-- j'ai modifié action pour qu'il soit compatible peut importe le nom de la page-->


    <br/><input type="submit" name="boutton" value="Allumer">
    </form>
<!-- retour au code HTML -->
</body>
</html>
<html>
<body>
<font size="2" face="Arial">Eteindre</font>
<?php
    $fichier
="g.txt"// Nom du fichier à modifier

        
if(isset($_POST['boutton'])) {    
        
//if(is_file($fichier)) unlink($fichier); //si le fichier existe :  suppression du fichier pour le remplacer par le nouveau avec les nouveau éléments
        
$ouverture=fopen("$fichier","w"); // Création du nouveau fichier et ouverture du fichier avec le mode w on ouvre le fichier qu'en écriture et unlink devient inutile car le fichier est vidé automatiquement
        
fwrite($ouverture,"n"); // ecriture
        
fclose($ouverture); // fermeture du fichier
        
echo '<h2>Modification effectue</h2>'// Affichage validation
        
}
?>


    <form method="post" action=""> <!-- j'ai modifié action pour qu'il soit compatible peut importe le nom de la page-->


    <br/><input type="submit" name="boutton" value="eteindre">
    </form>
<!-- retour au code HTML -->
</body>
</html>


visible ici: http://modelismebychico.free.fr/led.php

Le problème est que la variable qui est écrite dans le fichier texte est toujours "n"

Comment donc pour avoir deux boutons en même temps sur la page ?

merci
Mon Blog sur l'environnement Arduino ... Tutos fait par un débutant pour les débutants ^^

http://chicowebsite.free.fr/

chicotore

En fait c'été une erreur toute bête  :smiley-roll-sweat: mes deux boutons avait le même nom et surtout mes deux actions aussi  :smiley-yell:

Voila le code qui fonctionne au cas ou:

Code: [Select]
<html>
<body>
<font size="2" face="Arial">Allumer</font>
<?php
    $fichier
="g.txt"// Nom du fichier à modifier

        
if(isset($_POST['boutton1'])) {    
        
//if(is_file($fichier)) unlink($fichier); //si le fichier existe :  suppression du fichier pour le remplacer par le nouveau avec les nouveau éléments
        
$ouverture=fopen("$fichier","w"); // Création du nouveau fichier et ouverture du fichier avec le mode w on ouvre le fichier qu'en écriture et unlink devient inutile car le fichier est vidé automatiquement
        
fwrite($ouverture,"m"); // ecriture
        
fclose($ouverture); // fermeture du fichier
        
echo '<h2>Modification effectue</h2>'// Affichage validation
        
}
?>


    <form method="post" action=""> <!-- j'ai modifié action pour qu'il soit compatible peut importe le nom de la page-->


    <br/><input type="submit" name="boutton1" value="Allumer">
    </form>
<!-- retour au code HTML -->
</body>
</html>
<html>
<body>
<font size="2" face="Arial">Eteindre</font>
<?php
    $fichier
="g.txt"// Nom du fichier à modifier

        
if(isset($_POST['boutton2'])) {    
        
//if(is_file($fichier)) unlink($fichier); //si le fichier existe :  suppression du fichier pour le remplacer par le nouveau avec les nouveau éléments
        
$ouverture=fopen("$fichier","w"); // Création du nouveau fichier et ouverture du fichier avec le mode w on ouvre le fichier qu'en écriture et unlink devient inutile car le fichier est vidé automatiquement
        
fwrite($ouverture,"n"); // ecriture
        
fclose($ouverture); // fermeture du fichier
        
echo '<h2>Modification effectue</h2>'// Affichage validation
        
}
?>


    <form method="post" action=""> <!-- j'ai modifié action pour qu'il soit compatible peut importe le nom de la page-->


    <br/><input type="submit" name="boutton2" value="eteindre">
    </form>
<!-- retour au code HTML -->
</body>
</html>

Mon Blog sur l'environnement Arduino ... Tutos fait par un débutant pour les débutants ^^

http://chicowebsite.free.fr/

Vostock

Salut,

peux-tu nous montrer ton code python pour aller lire ces fichiers texte,
ça m'intéresse ;)

chicotore

rendez-vous sur le sujet "Domotique V1.0 [ début du projet "abouti"]"  ;)
Mon Blog sur l'environnement Arduino ... Tutos fait par un débutant pour les débutants ^^

http://chicowebsite.free.fr/

alphindia

Je trouve ton projet très intéressant et j'ai moi même commencé le python il n'y a pas longtemps...
Pourrai tu me dire quel code il faut utiliser pour envoyer un octet à la carte arduino (code Python et Arduino) s'il te plait ?

Merci

PS: le lien vers le site sur lequel tu as mis ta page set verrouillé

Go Up