Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php curl没有从外部站点收集所有cookie_Php_Cookies_Curl - Fatal编程技术网

Php curl没有从外部站点收集所有cookie

Php curl没有从外部站点收集所有cookie,php,cookies,curl,Php,Cookies,Curl,出于某种原因,它没有收集所有的cookies,它没有收集密码散列或成员id,我不知道为什么它没有设置这些,因为它得到了其他的,我是否在编码方面做了什么错误,这是我第一次使用curl 这是cookie.txt文件中的信息 <?php //init curl function curl_file_get_contents($url){ $username = 'user@hotmail.com'; $password = 'mypass'; $loginUrl = '

出于某种原因,它没有收集所有的cookies,它没有收集密码散列或成员id,我不知道为什么它没有设置这些,因为它得到了其他的,我是否在编码方面做了什么错误,这是我第一次使用curl

这是cookie.txt文件中的信息

<?php
//init curl

function curl_file_get_contents($url){
    $username = 'user@hotmail.com';
    $password = 'mypass';
    $loginUrl = 'http://forums.zybez.net/index.php?app=curseauth&module=global&section=login';

    //init curl
    $ch = curl_init();

    curl_setopt($ch, CURLOPT_COOKIEJAR, 'cookie.txt');
    curl_setopt($curl, CURLOPT_COOKIEFILE, 'cookie.txt');
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
    curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 30);
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
    curl_setopt($ch, CURLOPT_VERBOSE, true);
    curl_setopt($ch, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']);
    curl_setopt($ch, CURLOPT_URL, $loginUrl);
    curl_setopt($ch, CURLOPT_POST, 1);
    curl_setopt($ch, CURLOPT_POSTFIELDS, 'user=' . $username . '&pass=' . $password);
    $store = curl_exec($ch);
    curl_setopt($ch, CURLOPT_REFERER, 'http://forums.zybez.net/runescape-2007-prices/282-law+rune');

    $content = curl_exec($ch);

    curl_close($ch);

    file_put_contents('~/download.zip', $content);

    $curl = curl_init();

    curl_setopt($curl, CURLOPT_COOKIEJAR, 'cookie.txt');
    curl_setopt($curl, CURLOPT_COOKIEFILE, 'cookie.txt');
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);
    curl_setopt($curl, CURLOPT_CONNECTTIMEOUT, 30);
    curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);
    curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
    curl_setopt($curl, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']);
    curl_setopt($curl, CURLOPT_VERBOSE, true);
    curl_setopt($curl, CURLOPT_REFERER, $loginUrl);
    curl_setopt($curl, CURLOPT_URL, $url);
    curl_setopt($curl, CURLOPT_CONNECTTIMEOUT, 5);
    curl_setopt($curl, CURLOPT_FAILONERROR, TRUE);
    $contents = curl_exec($curl);

    return $contents;
    curl_close($curl);
}

function get_input_tags($html){
    $post_data = array();

    // a new dom object
    $dom = new DomDocument;

    //load the html into the object
    $dom->loadHTML($html);
    //discard white space
    $dom->preserveWhiteSpace = false;

    //all input tags as a list
    $input_tags = $dom->getElementsByTagName('input');

    //get all rows from the table
    for ($i = 0; $i < $input_tags->length; $i++) {
        if (is_object($input_tags->item($i))) {
            $name   = $value = '';
            $name_o = $input_tags->item($i)->attributes->getNamedItem('name');
            if (is_object($name_o)) {
                $name = $name_o->value;

                $value_o = $input_tags->item($i)->attributes->getNamedItem('value');
                if (is_object($value_o)) {
                    $value = $input_tags->item($i)->attributes->getNamedItem('value')->value;
                }

                $post_data[$name] = $value;
            }
        }
    }
    return $post_data;
}

/*
Usage
*/

error_reporting(~E_WARNING);

function getauth(){
    $html = curl_file_get_contents("http://forums.zybez.net/runescape-2007-prices/282-law+rune");

    echo "<pre>";
    $auth1 = (get_input_tags($html));
    $auth  = $auth1["auth"];

    print_r($auth1);

}
getauth();
?>

可能这并没有真正告诉我如何从网站本身获取它们,只是告诉我如何添加它们,但哈希和id每次都会发生变化,所以我无法手动添加