Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] ejecutar php en windows

Estas en el tema de ejecutar php en windows en el foro de PHP en Foros del Web. Hola, estoy empezando con los sockets en php y tengo un script php que necesito ejecutar. Lei por hay que para ejecutar un php sin ...
  #1 (permalink)  
Antiguo 04/02/2013, 16:35
 
Fecha de Ingreso: junio-2011
Mensajes: 89
Antigüedad: 12 años, 10 meses
Puntos: 7
ejecutar php en windows

Hola, estoy empezando con los sockets en php y tengo un script php que necesito ejecutar. Lei por hay que para ejecutar un php sin hacer la peticion con un navegador, pues se trata de un bucle infinito que espera conexiones, se trata de un archivo .bat con el siguiente contenido:

Código:
c:/wamp/bin/php\php5.4.3/php.exe -q c:/wamp/www/conexion_socket/daemon.php
pause
exit
Se supone que asi se ejecuta el script que esta en c:/wamp/www/conexion_socket/daemon.php pero me da error en las funciones de sockets.

Si, active los sockets de php, es mas, funcionan si lo hago ejecutandolo mediante el navegador. Uso wampserver bajo windows (es obvio) y necesito ayuda para resolver esto, gracias de antemano
  #2 (permalink)  
Antiguo 04/02/2013, 16:36
Avatar de dashtrash
Colaborador
 
Fecha de Ingreso: abril-2007
Ubicación: Ni en Sevilla,ni en Sanlúcar..qué más da..
Mensajes: 927
Antigüedad: 17 años, 1 mes
Puntos: 270
Respuesta: ejecutar php en windows

Qué error en las funciones de sockets?
  #3 (permalink)  
Antiguo 04/02/2013, 16:43
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: ejecutar php en windows

Tienes que entender algo, el php.ini que usa el webserver no necesariamente es el mismo que usa el ejecutable directo, por lo que lo mejor es que le pases el path al php.ini usando la opción -c.

Saludos.
  #4 (permalink)  
Antiguo 04/02/2013, 16:54
 
Fecha de Ingreso: junio-2011
Mensajes: 89
Antigüedad: 12 años, 10 meses
Puntos: 7
Respuesta: ejecutar php en windows

Cita:
Iniciado por GatorV Ver Mensaje
Tienes que entender algo, el php.ini que usa el webserver no necesariamente es el mismo que usa el ejecutable directo, por lo que lo mejor es que le pases el path al php.ini usando la opción -c.

Saludos.
¿Como? Entendi la solucion pero no como hacerla. ¿Quieres decir que la configuracion abierto desde consola es distinta que desde la web?¿Y como hago eso que dices? Estoy empezando en esto, asi que perdona mi ignorancia.
  #5 (permalink)  
Antiguo 04/02/2013, 16:59
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: ejecutar php en windows

Así es, son diferentes, y pues solamente cuando mandes llamar al ejecutable:
Código:
php.exe -c path/a/donde/esta/el/php.ini archivo.php
Saludos.
  #6 (permalink)  
Antiguo 04/02/2013, 17:11
 
Fecha de Ingreso: junio-2011
Mensajes: 89
Antigüedad: 12 años, 10 meses
Puntos: 7
Respuesta: ejecutar php en windows

Me da el mismo error, uso este .bat:

Código:
c:\wamp\bin\php\php5.4.3\php.exe -c C:\wamp\bin\php\php5.4.3\php.ini c:\wamp\www\conexion_socket\daemon.php
pause
exit
Y me da este error: PHP Fatal error: Call to undefined socket_create() in c:\wamp\www\conexion_socket\daemon.php on line 3 y bla bla bla....

Te pongo el codigo que ejecuta:

Código PHP:
<?php

$socket 
socket_create(AF_INETSOCK_STREAM0);
socket_bind($socket04545);
socket_listen($socket);

while(
1) {
    
$client socket_accept($socket);
    
$buffer socket_read($client1024);
    
socket_write($client$buffer);
    
socket_close($client);
}

socket_close($socket);
exit(
0);
?>
  #7 (permalink)  
Antiguo 04/02/2013, 17:33
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: ejecutar php en windows

¿Ya verificaste que en el php.ini que especificas este habilitado el soporte para sockets?
  #8 (permalink)  
Antiguo 04/02/2013, 17:40
 
Fecha de Ingreso: junio-2011
Mensajes: 89
Antigüedad: 12 años, 10 meses
Puntos: 7
Respuesta: ejecutar php en windows

yaaa!! resuelto!! si era un problema de configuracion, active los socket desde el menu de wampserver y ya como ultimo recurso he mirado a fondo el archivo .ini y el problema era en la linea:

Código:
;extension=php_sockets.dll
la sustitui por esta otra:

Código:
extension=php_sockets.dll
y funcionaaaa!!

Muchas gracias! me has ayudado mucho, sin esto no podria seguir aprendiendo

Etiquetas: windows
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 10:09.