Per comandare un programma da PHP dobbiamo come prima cosa verificare se è installato sul nostro Raspberry
php -v
Se dopo aver digitato questo comando da php esce la versione, allora è installato.
Dopo aver installato php dobbiamo creare all'interno della directory /var/www/html un file index.php e in fine scrivere il seguente codice.
<html>
<head>
<link rel="styesheet" type="text/css" href="bott.css"> //collegamento a css
<form action = "index.php" method="post">
<input type = "submit" name="acceso" value="accendi led" class="ban-css"> //tasto submit
</form>
</head>
<?php
if ($_POST['acceso']){ //se premuto il submit allora eseguo il programma python
$commandToExec= "sudo python /home/lab15/Desktop/ledd.py"; //do la directory di dove è il file python
$output = shell_exec($commandToExec);
echo $output;
}
?>
</html>
Controllare che siano abilitati i permessi root all'utente www-data. Per fare ciò dobbiamo spostarsi nella directory /etc e lanciare il comando sudo visudo. Dopo aver lanciato il comando si aprirà un documento dove dobbiamo inserire la seguente stringa o togliere il commento.
www-data ALL=NOPASSWD: ALL
pi ALL=(ALL)NOPASSWD:ALL
apache ALL=(ALL)NOPASSWD:ALL
potrebbe essere scritta anche così:
www-data ALL=PYTHON, NOPASSWD: ALL