Linux en Espanol
 
Lanzar script en C desde HTML (o php) (tema #25121)
Publicar nuevo tema  Responder al tema    Foros de discusión -> Programación
Autor Mensaje
matiaswsr
Forista


Registrado: 2007-08-03
Mensajes: 74

Publicado: 2015-07-31 17:25:25    Asunto:

Hola.

Tengo las dudas de si sigue funcionando este foro, desde que me inicie en Linux en el año 2005, cuando decidi instalar la primer distro que probe, Mandriva, hasta el presente, siempre he encontrado soluciones a todos mis \"inconvenientes\", a veces abriendo algun tema y otras solo leyendo...
En lo personal me ha servido de mucho este foro, y desearia que siga existiendo, tengo la voluntad de colaborar economicamente mes a mes para tal fin si es necesario, en mi caso siempre tengo dudas, y plantearlas y dejarlas escritas en un foro de este tipo tambien ayuda a gente que como yo en su momento inicio a los golpes y en base a consultas...en fin...

Viniendo a la consulta que deseo realizar, resumiendo, quiero lanzar desde una web html (o php) un script realizado en C.
Si sirve de algo el servidor web es apache, la distro es Raspbian.

Saludos a todos y gracias!



matiaswsr
Forista


Registrado: 2007-08-03
Mensajes: 74

Publicado: 2015-08-07 14:35:53    Asunto:

Hola, he encontrado la solucion.
Tuve que darle permisos al usuario \"www-data\" para que pueda ejecutar el programita.
Colocar el programita realizado en C en el mismo directorio donde se encontraba la pagina (.php)

Y el codigo para lanzar el programita fue:

$comando = shell_exec(\'sudo programa\');
echo \"<pre>$comando</pre>\";

Con estas dos lineas pude lanzar el programa realizado en C desde la web.

Sds.
miguelgf
Forista


Registrado: 2006-12-28
Mensajes: 621

Publicado: 2015-08-11 00:50:03    Asunto:

Hola.

Aparte de shell_exec dispones de:
exec
system
passthru

Usar una u otra depende de lo que quieras hacer.

De lo que yo conozco, las más interesantes son:
shell_exec si devuelves datos de tipo texto.
passthru si devuelves datos binaros, por ejemplo una imagen, un pdf, etc.

Saludos.





La marca registrada Linux (R) se usa siguiendo la sublicensia obtenida del "Linux Mark Institute",
el LICENCIATARIO exclusivo de Linus Torvalds, propietario de la marca en EEUU y otros países
The registered trademark Linux (R) is used pursuant to a sublicense from the Linux Mark Institute,
the exclusive LICENSEE of Linus Torvalds, owner of the mark in the U.S. and other countries