El 28 de agosto de 2011 00:13, Felix Perez <[email protected]>escribió:
> El día 27 de agosto de 2011 03:25, rantis cares > <[email protected]> escribió: > > Listeros: > > > > Buenas noches tengan todos ustedes. > > > > El motivo de mi mail es por lo siguiente: > > > > Hace tiempo instale un servidor con apache, php y gnokii, enviaba > > mensajes automaticos para revisar errores o fallo en la energia > > electrica, etc... > > > > Ahora tengo la necesidad de meter un numero, un mensaje, esto lo he > > realizado mediante un formulario html, donde use un "input name" lo > > llame numero y despues un "textarea" donde va el mensaje. Mientras que > > el boton de "Enviar SMS" se basa en <form method="post" > > action="sms.php"> > > > > Posteriormente, buscando en internet, me encontre que el php seria muy > > sencillo, lo copie y lo guarde, lo subi a ese servidor para que cuando > > se llene el formulario y se presione el boton "Enviar SMS" se ejecute > > gnokii enviando el mensaje. > > > > Cuando yo ejecuto el comando directo en la consola de comandos del > > servidor mediante ssh o si estoy frente a dicho servidor la accion se > > realiza como lo muestro a continuacio: > > > > > > echo "El sistema funciona bien" | gnokii --sendsms 5535423453 > > > > Y el mensaje llega perfectamente a los pocos segundos y sin ningun > > problema. Ahora que lo quiero hacer via web mediante el formulario y > > el script php, no me arroja ningun error pero no lo envia. Tal vez el > > script tiene algun error o algo por el estilo. > > > > ¿Algun comentario que pudiera guiarme para encontrar dicho problema?. > > > > El scrip php es el siguiente: > > > > <?php > > //INICIO DEL SCRIPT PHP > > > > system('echo '.escapeshellarg('$mensaje').' | gnokii --sendsms > > '.escapeshellarg('$numero')); > > > > ?> > > > > Al no funcionar el script anterior, lo midifique y quedo de la siguiente > manera: > > > > <?php > > //INICIO DEL SCRIPT PHP > > > > $numero=$_POST['numero']; > > $mensaje=$_POST['mensaje']; > > > > system('echo '.escapeshellarg('$mensaje').' | gnokii --sendsms > > '.escapeshellarg('$numero')); > > > > ?> > > > > Pero tampoco funciono. > > > > Gracias > > > > Rantiscares > > > > P.D. Espero que esto no sea OT. > > > > una más: > > http://www.google.cl/#sclient=psy&hl=es&biw=1366&bih=608&source=hp&q=listas+php&pbx=1&oq=listas+php&aq=f&aqi=g1g-s1g2g-s1&aql=&gs_sm=e&gs_upl=934l3413l0l3531l10l9l0l0l0l0l640l3680l2-1.2.2.3l8l0&bav=on.2,or.r_gc.r_pw.&fp=70430f521998e5e5 > > > -- > usuario linux #274354 > normas de la lista: http://wiki.debian.org/es/NormasLista > como hacer preguntas inteligentes: > http://www.sindominio.net/ayuda/preguntas-inteligentes.html > > > -- > To UNSUBSCRIBE, email to [email protected] > with a subject of "unsubscribe". Trouble? Contact > [email protected] > Archive: > http://lists.debian.org/caaizax4ukl4_yqezxyroygfju_rhswwhnfytp1b-mdvu2cg...@mail.gmail.com > > Yo lo descubrí hace poco, que php no se puede usar con pipes (| ), y lo resolvi haciendo un script en bash: enviarsms.sh #!/bin/sh echo $1 | gnokii --sendsms $2 A eso le das permiso de ejecucion, por lo menos como www-data: chown www-data:www-data enviarsms.sh chmod ug+x enviarsms.sh y desde el php: <?php //INICIO DEL SCRIPT PHP $numero=$_POST['numero']; $mensaje=$_POST['mensaje']; system( dirname(__FILE__) . '/enviarsms.sh '.escapeshellarg('$mensaje') . ' ' . escapeshellarg('$numero')); ?> Por otro lado fijate que PHP no este en safe_mode, que en ese caso no funcionarian las funciones cms, exec, syste, etc. -- El Tio ~ Programador, hacker y filósofo web: http://blog.exodica.com.ar Linked'in: http://www.linkedin.com/in/ogentilezza Twitter: @exos <http://twitter.com/exos>, Indeti.ca: @exos<http://identi.ca/exos> Tels: [+54 11] 638-LINUX (54689) - [+54 9 11] 6799-4797

