Quiero hacer un programa en php, para obtener en una base de datos un listado de una página, el problema es que esa web está paginada.
Entonces inmaginar que estamos en pagina1.php y para cambiar a la segunda paginacion envia un formulario con action=pagina1.php pero con method post y le pasa unos parámetros, como puede ser el ultimo registro mostrado, para poder mostrar los siguientes.
Entonces lo que yo quiero saber es como puedo hacer una petición post desde php para simular ser un visitante de la web.
Si la peticion fuera get, con esto:
file('http://web.com?variable1=2&variable2=3)
me serviria, pero no sé como construir el enlace para poderme descargar el resultado de esa web.
No sé si me he explicado.
Un saludo!
Cita de: EKDV en 13 Mayo 2008, 13:50 PM
Quiero hacer un programa en php, para obtener en una base de datos un listado de una página, el problema es que esa web está paginada.
Entonces inmaginar que estamos en pagina1.php y para cambiar a la segunda paginacion envia un formulario con action=pagina1.php pero con method post y le pasa unos parámetros, como puede ser el ultimo registro mostrado, para poder mostrar los siguientes.
Entonces lo que yo quiero saber es como puedo hacer una petición post desde php para simular ser un visitante de la web.
Si la peticion fuera get, con esto:
file('http://web.com?variable1=2&variable2=3)
me serviria, pero no sé como construir el enlace para poderme descargar el resultado de esa web.
No sé si me he explicado.
Un saludo!
1. <?php
2. $ch = curl_init('http://dominio.com/pagina.php');
3. curl_setopt ($ch, CURLOPT_POST, 1);
4. curl_setopt ($ch, CURLOPT_POSTFIELDS, "parametro1=valor1¶metro2=valor2");
5. curl_exec ($ch);
6. curl_close ($ch);
7. ?>
El metodo con CURL esta bien, pero depende de donde lo uses no podrás o te puede parecer algo engorroso.
Puedes probar de realizar la petición POST desde un formulario normal, poner un proxy al navegador web, ver que datos envia exactamente, y simularlo con sockets en PHP (ver página oficial).
Saludos.
Para lo que yo quiero, me viene bien esa opción de CURL, no obstante, voy a mirarme lo que comentas Ertai porque para otras cositas que tengo en mente, me gusta más la idea de simular sockets.
Gracias a los dos!!