卷曲将表单提交到外部网页

问题描述

| 我需要一些帮助。 我正在尝试将$ _POST放入外部网页的表单中。 下一个想法是: 用户进入我的网页。 www.caae.cl/encuesta 用户输入用户名和密码(进入我的网页) 我提交到外部网页的表单(https://www.uc.cl),我没有控制权,用户和密码 我检查组合是否正确 我将用户重定向到我的网页用户首页 我有两点:首先,我如何通过cUrl进行提交,第二点,我需要阅读外部网页的Cookie,以检查用户密码组合是否正确 我将不胜感激任何帮助。我正在使用PHP和curl。     

解决方法

        在此处阅读有关cURL的文档。它具有可用于POST数据,cookie和HTTPS的选项。 但是,为了帮助您,这是我用来发出cURL请求的函数。您需要根据自己的目的修改选项,例如您想要启用HTTPs选项,并且您可能不想存储cookie。不过请阅读文档!
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,CURLOPT_HEADER,true); 
    curl_setopt($ch,CURLINFO_HEADER_OUT,true);
    curl_setopt($ch,CURLOPT_VERBOSE,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;
}
另外,如果有必要将Cookie变量放入php变量中,请按照此处的答案进行操作。请仔细考虑一下,检查Cookie是否是检查登录的最佳方法。