He estado intentando conectar a un servidor externo a traves de curl. Entonces lo que primero debo hacer es iniciar sesión en la página, para despues enviar otro form y obtener la información final. Este es mi codigo:
Código:
Entonces, el paso 1 (iniciar sesion) se realiza bien.$postData2 = array( 'From'=>'20/10/2016', 'To' =>'30/10/2016' ); $postData = array( 'User' =>'Sebastian', 'Password' =>'12345' ); //1.- iniciar sesion... $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, 'https://web.com/login.php'); curl_setopt($ch, CURLOPT_COOKIESESSION, true); curl_setopt($ch, CURLOPT_COOKIEJAR, 'cookie.txt'); curl_setopt($ch, CURLOPT_COOKIEFILE, 'cookie.txt'); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 30); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $postData); curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 5.1; es-CL; rv:1.8.1.3) Gecko/20070309 Firefox/2.0.0.3"); curl_exec ($ch); //2.- enviar fechas... curl_setopt($ch, CURLOPT_URL, 'https://web.com/askdates.php'); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $postData2); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_exec ($ch); //3.- respuesta... curl_setopt($ch, CURLOPT_URL, 'https://web.com/answer.php'); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 5.1; es-CL; rv:1.8.1.3) Gecko/20070309 Firefox/2.0.0.3"); $page=curl_exec($ch); curl_close($ch); echo $page;
Con el paso 2, se envían las fechas de la información que necesito, pero este form muestra las respuestas en https://web.com/answer.php (por eso hago el paso 3).
El problema es que se muestra https://web.com/answer.php pero sin las variables enviadas..
Como soluciono esto??
PD: Inicialmente realizaba solo los pasos 1 y 2, pero en el paso 2 no redirecciona a https://web.com/answer.php y da error.
Gracias