Foros del Web » Programando para Internet » PHP »

Servidor de Sockets y Msql

Estas en el tema de Servidor de Sockets y Msql en el foro de PHP en Foros del Web. Hola a tod@s, Estoy programando un servidor para capturar datos de dos sensores gprs.Estos envian los datos por m2m a una ip+puerto. Necesito capturar los ...
  #1 (permalink)  
Antiguo 18/04/2011, 23:26
 
Fecha de Ingreso: abril-2011
Mensajes: 3
Antigüedad: 13 años, 6 meses
Puntos: 0
Servidor de Sockets y Msql

Hola a tod@s,

Estoy programando un servidor para capturar datos de dos sensores gprs.Estos envian los datos por m2m a una ip+puerto. Necesito capturar los datos por socket y colocarlos en una base de datos mysql para luego tratarlos. He creado un servidor apache con php y mysql, he abierto un puerto y redirigido desde mi router a la ip privada, y implemento un aplicación en php que incluye socket_create,socket_bind,socket listen. Creo que tengo que hacer un bucle que vaya leiendo recogiendo los datos que lee socket_listen son socket_read y colocarlos en una tabla de mysql, pero no me aclaro. Alguien me puede ayudar con este bucle o tiene algo ya implementado? Muchas gracias a tod@s.
  #2 (permalink)  
Antiguo 18/04/2011, 23:38
Avatar de Sourcegeek
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: $mex['B.C.'];
Mensajes: 1.816
Antigüedad: 15 años, 5 meses
Puntos: 322
Respuesta: Servidor de Sockets y Msql

Yo hice un bot en IRC que usa sockets y lo que uso para escuchar el canal e ir recogiendo datos uso un bucle while con ayuda de fgets.
Si pones tu codigo seria mas facil ayudarte :)
__________________
Buscas desarrollador web? Sourcegeek. Diseño web, Maquetación y Programación
¡Escribe bien! Esto es un foro, no un Facebook para que escribas con los pies
  #3 (permalink)  
Antiguo 19/04/2011, 00:12
 
Fecha de Ingreso: abril-2011
Mensajes: 3
Antigüedad: 13 años, 6 meses
Puntos: 0
Respuesta: Servidor de Sockets y Msql

La primera parte del código es:


// don't timeout
set_time_limit (0);
// set some variables
$host = "127.0.0.1";
$port = 10000;
// create socket
$socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP) or die("Could not create socket\n");
// bind socket to port
$result = socket_bind($socket, $host, $port) or die("Could not bind to socket\n");
// start listening for connections
$result = socket_listen($socket, 3) or die("Could not set up socket listener\n");
// accept incoming connections
// spawn another socket to handle communication
$spawn = socket_accept($socket) or die("Could not accept incoming connection\n");
echo "Received connection request\n";

Pero no se si previo a socket_accept o después tengo que implementar el bucle para que lea los datos que hay en el socket.
  #4 (permalink)  
Antiguo 19/04/2011, 00:23
Avatar de Sourcegeek
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: $mex['B.C.'];
Mensajes: 1.816
Antigüedad: 15 años, 5 meses
Puntos: 322
Respuesta: Servidor de Sockets y Msql

Bueno, la forma que yo utilizo es mucho mas sencilla (solo uso fsockopen, fgets y fwrite)
Pero podrias usar un bucle y socket_read().
Un ejemplo sencillo:

Código PHP:
while (true) {
    
$buf socket_read($spawn2048PHP_NORMAL_READ);
    if (
$buf) {
        echo 
'Se ha recibido: '.$buf.'<br />';
    }

__________________
Buscas desarrollador web? Sourcegeek. Diseño web, Maquetación y Programación
¡Escribe bien! Esto es un foro, no un Facebook para que escribas con los pies

Etiquetas: msql, servidor, sockets
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

SíEste tema le ha gustado a 3 personas




La zona horaria es GMT -6. Ahora son las 01:06.