Foros del Web » Programando para Internet » PHP »

S.O.S problemas con el codigo exec ()

Estas en el tema de S.O.S problemas con el codigo exec () en el foro de PHP en Foros del Web. hola yo estoy haciendo un sistema que funciona de forma local y que al apretar un sierto boton necesito abrir un programa de stock que ...
  #1 (permalink)  
Antiguo 09/11/2009, 08:33
Avatar de intiweb  
Fecha de Ingreso: mayo-2009
Ubicación: Capital Federal
Mensajes: 363
Antigüedad: 15 años
Puntos: 5
S.O.S problemas con el codigo exec ()

hola yo estoy haciendo un sistema que funciona de forma local y que al apretar un sierto boton necesito abrir un programa de stock que fue creado exclusivamente para el negocio, la ruta del programa es la siguiente:

"C:\Archivos de programa\AgendaGame\main.exe"

quise usar la funcion exec () para que lo abra pero no logro que haga nada , yo lo use de la siguiente manera a ver si alguien me dice cual es mi error o de que manera se logra esto:

Un formulario envia un campo oculta llamado $a con el valor 1:



Código PHP:
<?php
if($a == 1)
{
exec("C:\Archivos de programa\e-Campaign 7\eCampaign.exe")
}else{
echo = 
"error";
}
?>
  #2 (permalink)  
Antiguo 09/11/2009, 08:58
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 9 meses
Puntos: 1532
Respuesta: S.O.S problemas con el codigo exec ()

postea el error.
  #3 (permalink)  
Antiguo 09/11/2009, 09:12
Avatar de chulifo  
Fecha de Ingreso: abril-2009
Ubicación: perdido en codigos del PHP, pero aprendo rapido!
Mensajes: 524
Antigüedad: 15 años
Puntos: 18
Respuesta: S.O.S problemas con el codigo exec ()

Cita:
Iniciado por intiweb Ver Mensaje
hola yo estoy haciendo un sistema que funciona de forma local y que al apretar un sierto boton necesito abrir un programa de stock que fue creado exclusivamente para el negocio, la ruta del programa es la siguiente:

"C:\Archivos de programa\AgendaGame\main.exe"

quise usar la funcion exec () para que lo abra pero no logro que haga nada , yo lo use de la siguiente manera a ver si alguien me dice cual es mi error o de que manera se logra esto:

Un formulario envia un campo oculta llamado $a con el valor 1:



Código PHP:
<?php
if($a == 1)
{
exec("C:\Archivos de programa\e-Campaign 7\eCampaign.exe")
}else{
echo = 
"error";
}
?>

por cierto esto no va es asi?

Código PHP:
<?php
if($a == 1)
{
exec("C:\Archivos de programa\e-Campaign 7\eCampaign.exe")
}else{
echo 
"error";
}
?>
__________________
Solo soy un simple fanático que mata el tiempo de la mejor manera.
  #4 (permalink)  
Antiguo 09/11/2009, 09:46
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: S.O.S problemas con el codigo exec ()

Lee lo siguiente: http://www.php.net/variables.external

Por otro lado exec() solo sirve en el servidor, no puedes usarlo para abrir un programa en el cliente.

Saludos.
  #5 (permalink)  
Antiguo 09/11/2009, 09:51
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años
Puntos: 1517
Respuesta: S.O.S problemas con el codigo exec ()

Tambien un error que veo es que no haz cerrado la funcion usando el punto y coma ;
Código PHP:
Ver original
  1. exec("aqui va lo que se ejecuta");
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #6 (permalink)  
Antiguo 09/11/2009, 10:07
Avatar de intiweb  
Fecha de Ingreso: mayo-2009
Ubicación: Capital Federal
Mensajes: 363
Antigüedad: 15 años
Puntos: 5
Respuesta: S.O.S problemas con el codigo exec ()

para maycolalvarez, no me da ningun error.

para chulifo no veo cual es la diferencia entre mi codigo y el tuyo ????

para GatorV ahora voy a ver el link gracias, yo tengo el appserver y uso php con un localhost de esta forma me funciona de forma local.

para abimaelrc es verdad, que vista la mia jajaja me olvide del ";" y tambien le puse "=" al echo y eso tambien esta mal ya lo corregi pero sigue sin hacer nada.

bueno vere el link y espero poder lograrlo
  #7 (permalink)  
Antiguo 09/11/2009, 10:11
Avatar de chulifo  
Fecha de Ingreso: abril-2009
Ubicación: perdido en codigos del PHP, pero aprendo rapido!
Mensajes: 524
Antigüedad: 15 años
Puntos: 18
Respuesta: S.O.S problemas con el codigo exec ()

Cita:
Iniciado por intiweb Ver Mensaje
tambien le puse "="
hay esta la diferencia entre el tullo y el mio =)
__________________
Solo soy un simple fanático que mata el tiempo de la mejor manera.
  #8 (permalink)  
Antiguo 09/11/2009, 14:14
Avatar de intiweb  
Fecha de Ingreso: mayo-2009
Ubicación: Capital Federal
Mensajes: 363
Antigüedad: 15 años
Puntos: 5
Respuesta: S.O.S problemas con el codigo exec ()

a jajaja perdon hoy se ve que estoy muy dormido . pero higual no me funciona no se porque
  #9 (permalink)  
Antiguo 09/11/2009, 16:12
Avatar de intiweb  
Fecha de Ingreso: mayo-2009
Ubicación: Capital Federal
Mensajes: 363
Antigüedad: 15 años
Puntos: 5
Respuesta: S.O.S problemas con el codigo exec ()

lista yo lo logre después de buscar por todos lados caí con que a nadie le funcionaba las funciones exec y system, y en un foro encontré la respuesta y es que para que funcione tenes que configurar el php.ini y darle permisos al apache obviamente hablando de windows.

aca mando los requisitos necesarios, y a disfrutar. obviamente funciona de forma local:

1.-Primero configura tu php.ini donde dice safe_mode= off, y safe_mode_exec_dir= On.
2.-En Services.msc entra a tu apache, click secundario y Propiedades ->Iniciar Sesion -> Permitir a los servicios que interectauan con el escritorio.
3. Esto es todo deberian funcionar te muestro el codigo:
<?php
system ( 'calc.exe' ); //o con exec.
?>
Todo esto en windows, habra que tener una shell de linux.....

tener en cuenta los antivirus que capas los tengan que desabilitar
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 20:28.