2011-06-13 2 views
0

je besoin d'aide dans ce domaine.soumettre le formulaire en page web externe avec boucle

Je suis en train de faire un $ _POST dans la forme d'une page Web externe. L'idée est la suivante:

  • l'utilisateur entre sur ma page Web. www.caae.cl/encuesta
  • l'utilisateur entre un nom d'utilisateur et mot de passe (dans ma page web)
  • Je soumets dans la forme de la page Web externe (https: //www.uc.cl), que je n'ai pas le contrôle, l'utilisateur et pw
  • i vérifier si la combinaison est correcte
  • rediriger l'utilisateur dans mes pages Web de la page d'accueil de l'utilisateur

J'ai deux points: d'abord comment puis-je faire la soumettre par cURL et le second, je dois lire le cookie de la page Web externe pour vérifier si le combo mot de passe de l'utilisateur est ok

je serais reconnaissant de toute aide. Im travaillant avec php et curl.

Répondre

2

Lire la documentation pour cURL here. Il dispose d'options que vous pouvez utiliser pour les données POST, les cookies et HTTPS.

Mais, pour vous aider, voici une fonction que j'utilise pour faire des demandes cURL. Vous voudrez modifier les options pour vos propres besoins, par ex. vous voulez activer les options HTTPs, et vous pouvez ne pas vouloir stocker les cookies. Lisez la documentation cependant!

function curl_request($url, $referer = false, $postdata = false, $new_session = false) //single custom cURL request. 
{ 
    $ch = curl_init(); 
    if ($new_session) 
    { 
     curl_setopt($ch, CURLOPT_COOKIESESSION, true); 
    } 
    curl_setopt($ch, CURLOPT_COOKIEJAR, "cookies.txt"); 
    curl_setopt($ch, CURLOPT_COOKIEFILE, "cookies.txt"); 
    curl_setopt($ch, CURLOPT_HEADER, true); 
    curl_setopt($ch, CURLINFO_HEADER_OUT, true); 
    curl_setopt($ch, CURLOPT_VERBOSE, true); 
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);  

    curl_setopt($ch, CURLOPT_URL, $url); 

    if ($referer) 
    { 
     curl_setopt($ch, CURLOPT_REFERER, $referer); 
    } 

    if ($postdata) 
    { 
     curl_setopt($ch, CURLOPT_POST, true); 
     curl_setopt($ch, CURLOPT_POSTFIELDS, $postdata); 
    } 

    $response = curl_exec($ch); 

    curl_close($ch); 

    return $response; 
} 

De plus, s'il est nécessaire d'obtenir le cookie vars dans une variable php, suivez la answer here. Réfléchissez bien si la vérification du cookie est la meilleure façon de vérifier la connexion.

Questions connexes