mau_restor
Posts: 1
Joined: Mon Oct 15, 2018 4:44 am

Rele, relay, relevador no enciende al ejecutar shell_exec o exec de python en php7

Mon Oct 15, 2018 4:46 am

Hola tengo este código en la Raspberry pi zero w:

Code: Select all

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title></title>
<link rel="stylesheet" href="">
</head>
<body>
<?php
/**
 * Ejecutando el encendido
 * 
 * Se ejecuta el encendidom apagado y encendido programado.
 */

if (isset($_POST["1sec"]))
    {
        exec("/usr/bin/python /var/www/html/relay.py");
        $que_hay = "Hola que hay, si se envió, pero ejecuta?";
        echo $que_hay;

        function success() {
            $mystring = exec('/usr/bin/python /var/www/html/relay.py', $output);
            var_dump($output);

        }
        success();
    }

?>

<h1>Encender la puerta</h1>

<p>A conntinuación tenermos estas opciones para prender y apagar el Relé.</p>

<form action="index.php" method="post" accept-charset="utf-8">

    <button name="1sec">Prender 1 segundo</button>
    <button type="submit" value="">Encender</button>
    <button type="submit" value="">Apagar</button>

</form>
<a href="execute.php">test</a>
<a href="test2.php">test2</a>

</body>
</html>
y tengo mi archivo relay.py

Code: Select all

#!/usr/bin/python
import RPi.GPIO as GPIO
import time 
GPIO.setmode(GPIO.BCM)
GPIO.setup(26, GPIO.OUT)
GPIO.setwarnings(False)
GPIO.output(26, GPIO.LOW)
GPIO.output(26, GPIO.HIGH)
time.sleep(1)

GPIO.cleanup()
El cual funciona en terminal perfecto con $python relay.py

No encuentro el problema al ejecutar con php dicha, ya he probado con discreciones relativas, shell_exec(), exec(), y el archivo php.ini no tiene esa función en desactivado

Code: Select all

disable_functions = pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,
No se que mas hacer...

mhamon
Posts: 3
Joined: Sat Sep 22, 2018 12:24 am

Re: Rele, relay, relevador no enciende al ejecutar shell_exec o exec de python en php7

Sun Nov 25, 2018 10:42 pm

Es viejo y seguramente lo hayas solucionado, pero es un problema de permisos por lo que veo.

Return to “Español”