effectuer une fonction php avec un bouton html
Posté : 17 juin 2021, 11:25
Bonjour à tous,
Voila ce qui m’amène à vous. Après avoir parcouru plusieurs fois les cours du PHP certaines notions m'échappent.
Je suis électronicien à la base. je souhaite créer un peu de domotique à la maison. Pour ce faire je dispose d'un sous-domaine pour héberger un serveur.
Donc je souhaiterais faire une interface web qui pourra "piloter" mon serveur en écrivant des choses par exemples dans un fichier, et ma domotique à la maison ira lira ce fichier pour savoir si il y ad es choses à faire.
Dans un tout premier temps afin de familiariser je souhaite créer une page nommée "index.php" sur mon serveur.
dans cette page il me faudrait un bouton qui s’appelle "ON" après je feras ile "OFF" .
Quand on clic sur ce bouton , il faudrait que cela écrive par exemple "ON' dans un fichier nommé "LED.txt" et bien sur après il faudra écrire "OFF" quand on cliquera sur l'autre bouton.
Ainsi mon client ( un ESP32) interrogera le serveur de temps en temps ( économie d’énergie) pour savoir quelle est l'état à appliquer sur la LED.
Après de très nombreux essais voilà ou j'en suis, mais ça ne fonctionne toujours pas? Qu'en penses vous ?
<!doctype html>
<html lang="fr">
<head>
<meta charset="utf-8">
<title>Commande LED</title>
</head>
<body>
<h1 id="titre" >Mon serveur Web</h1>
<?php
if(!empty($_POST['envoyer'])) {
echo "Bonjour !";
ON();
}
?>
<form action="<?php echo $_SERVER['PHP_SELF'];?>" method="post">
<input type="submit" id="envoyer" name="envoyer" value="envoyer">
<form>
<form>
<button onclick="ON()">On</button>
<button onclick="OFF()">Off</button>
</form>
<script>
function ON()
{
<?php
$monfichier = fopen('LED.txt', 'r+');
fseek($monfichier, 0); // On remet le curseur au début du fichier
fputs($monfichier, 'on' ); // On écrit le nouveau nombre de pages vues
fclose($monfichier);
?>
}
function OFF()
{
<?php
$monfichier = fopen('LED.txt', 'r+');
fseek($monfichier, 0); // On remet le curseur au début du fichier
fputs($monfichier, 'off' ); // On écrit le nouveau nombre de pages vues
fclose($monfichier);
?>
}
</script>
</body>
</html>
Merci de m'avoir lu !
Voila ce qui m’amène à vous. Après avoir parcouru plusieurs fois les cours du PHP certaines notions m'échappent.
Je suis électronicien à la base. je souhaite créer un peu de domotique à la maison. Pour ce faire je dispose d'un sous-domaine pour héberger un serveur.
Donc je souhaiterais faire une interface web qui pourra "piloter" mon serveur en écrivant des choses par exemples dans un fichier, et ma domotique à la maison ira lira ce fichier pour savoir si il y ad es choses à faire.
Dans un tout premier temps afin de familiariser je souhaite créer une page nommée "index.php" sur mon serveur.
dans cette page il me faudrait un bouton qui s’appelle "ON" après je feras ile "OFF" .
Quand on clic sur ce bouton , il faudrait que cela écrive par exemple "ON' dans un fichier nommé "LED.txt" et bien sur après il faudra écrire "OFF" quand on cliquera sur l'autre bouton.
Ainsi mon client ( un ESP32) interrogera le serveur de temps en temps ( économie d’énergie) pour savoir quelle est l'état à appliquer sur la LED.
Après de très nombreux essais voilà ou j'en suis, mais ça ne fonctionne toujours pas? Qu'en penses vous ?
<!doctype html>
<html lang="fr">
<head>
<meta charset="utf-8">
<title>Commande LED</title>
</head>
<body>
<h1 id="titre" >Mon serveur Web</h1>
<?php
if(!empty($_POST['envoyer'])) {
echo "Bonjour !";
ON();
}
?>
<form action="<?php echo $_SERVER['PHP_SELF'];?>" method="post">
<input type="submit" id="envoyer" name="envoyer" value="envoyer">
<form>
<form>
<button onclick="ON()">On</button>
<button onclick="OFF()">Off</button>
</form>
<script>
function ON()
{
<?php
$monfichier = fopen('LED.txt', 'r+');
fseek($monfichier, 0); // On remet le curseur au début du fichier
fputs($monfichier, 'on' ); // On écrit le nouveau nombre de pages vues
fclose($monfichier);
?>
}
function OFF()
{
<?php
$monfichier = fopen('LED.txt', 'r+');
fseek($monfichier, 0); // On remet le curseur au début du fichier
fputs($monfichier, 'off' ); // On écrit le nouveau nombre de pages vues
fclose($monfichier);
?>
}
</script>
</body>
</html>
Merci de m'avoir lu !