Ver Mensaje Individual
  #12 (permalink)  
Antiguo 27/07/2013, 16:16
Avatar de Dalam
Dalam
 
Fecha de Ingreso: septiembre-2010
Mensajes: 409
Antigüedad: 12 años, 4 meses
Puntos: 56
Respuesta: ¿Es posible redireccionar con curl?

CURL permite muchas cosas entre las cuales esta obtener la cookie y el retorno del código por ejemplo.

Para obtener la cookie y guardarla en un archivo temporal hasta que se destruya CURL
seria :

Código PHP:
    $cookiefile tempnam ("temp""CURLCOOKIE");
    
    
$chcurl_init("http://pagina a visitar.com");
    
curl_setopt($chCURLOPT_COOKIEJAR$cookiefile);
    
curl_setopt ($chCURLOPT_RETURNTRANSFERtrue);
    
$resultado curl_exec ($ch); 
Esto crearía un archivo .tmp con los valores de la cookie y cargaría el código de la pagina en la variable $resultado, puedes obtener todos los datos que posee la pagina o hacer lo que quieras con el código y luego puedes hacer lo siguiente para enviar los datos por post:
Código PHP:
    $chcurl_init("http://pagina a visitar.com");//pagina a visitar
    
curl_setopt ($chCURLOPT_COOKIEFILE$cookiefile);//utilizamos la cookie que conseguimos anteriormente
    
curl_setopt ($chCURLOPT_RETURNTRANSFERtrue);//para que nos devuelva el resultado
    
curl_setopt($chCURLOPT_FOLLOWLOCATIONtrue);//esto es para seguir las redirecciónes
    
curl_setopt($chCURLOPT_CONNECTTIMEOUT0);//tiempo máximo de conexión. 0 para ilimitado
    
curl_setopt ($chCURLOPT_POST1);//utilización de método post
    
curl_setopt ($chCURLOPT_POSTFIELDS"variable1=valor1&variable2=valor2");//variables que se desean enviar
    
$res curl_exec ($ch);//ejecuta CURL
    
unlink($ckfile);//borra el archivo de la cookie
    
curl_close($ch);//cierra CURL 
Una vez tengas esto y si no has enviado nada al navegador puedes utilizar header de php para redireccionár a la pagina que desees.
Ten en cuenta que si no borras la cookie podrás tener los datos de la misma para redireccionár a alguna pagina del servidor del que la obtuviste

Si tienes alguna duda sobre como utilizar CURL me lo haces saber.
Espero que te sirva esto.