проблема curl + cookie

Статус
В этой теме нельзя размещать новые ответы.
Тут новая проблема, похоже кукисы нельзя передать массивом. print_r($arr); выдает нужный результат а попытка записать его в переменную или фаил возвращает слово Array.

если прогнать регуляркой тот кусок джава-скрипта который вы предоставили выше, то в $arr попадут след. данные

Код:
 Array
(
    [0] => Array
        (
            [0] => document.cookie="параметр=MXхеш1Vk; expires=day, 01 Aug 01 01:01:01 GMT; path=/; domain=.domain.com;"
            [1] => document.cookie='4d5e11111a56=1281078431-0-!0;path=/;expires='
            [2] => document.cookie='d270d11111d173=bf0a111111739;path =/'
        )

    [1] => Array
        (
            [0] => параметр=MXхеш1Vk; expires=day, 01 Aug 01 01:01:01 GMT; path=/; domain=.domain.com;
            [1] => 4d5e11111a56=1281078431-0-!0;path=/;expires=
            [2] => d270d11111d173=bf0a111111739;path =/
        )

)

как видите чтоб добраться к нужным значениям нужно обратиться к массив слд. образом
PHP:
$arr[1][0]
$arr[1][1]
$arr[1][2]
// ну или в цыкле 
foreach( $arr[1] as $ar){
 // переменная $ar и будет вашими куками - ее и записывайте в файл 
}
//или через фор
$count = $count($arr[1]);
for($i=0; $i<=$count; $i++)
//переменная $arr[1][$i] и будет вашими куками ... - ее и записывайте в файл


да и похоже вы не обратили внимания что куки которые вы парсите не есть конечными куками ....
куки в вашем коде формируются динамически... как минимум к второму куку прибавляется результат вычисления метода h0285536890192.toGMTString(h02855368901 92)... если это не учесть то конечный продукт работать не будет
 
как видите чтоб добраться к нужным значениям нужно обратиться к массив слд. образом
PHP:
$arr[1][0]
$arr[1][1]
$arr[1][2]
// ну или в цыкле 
foreach( $arr[1] as $ar){
 // переменная $ar и будет вашими куками - ее и записывайте в файл 
}
//или через фор
$count = $count($arr[1]);
for($i=0; $i<=$count; $i++)
//переменная $arr[1][$i] и будет вашими куками ... - ее и записывайте в файл
да и похоже вы не обратили внимания что куки которые вы парсите не есть конечными куками ....
куки в вашем коде формируются динамически... как минимум к второму куку прибавляется результат вычисления метода h0285536890192.toGMTString(h02855368901 92)... если это не учесть то конечный продукт работать не будет

В цыкле, если сделать:

PHP:
foreach( $arr[1] as $ar){
 echo $ar."<br>";
}

выдает все элементы. А:

PHP:
foreach( $arr[1] as $ar){
 		$t = fopen("cookie.txt", "w");
	fputs($t, $ar);
	fclose($t);
}

пишет в cookie.txt только последний элемент массива. Не понятно...

PHP:
$count = $count($arr[1]);
for($i=0; $i<=$count; $i++)

Возвращает ошибку: Function name must be a string

П.С. Да, куки формируются динамически, но ведь парсится конечный результат :)
 
есно пишет только последний
ты же на каждой итерации создаешь новый файл
PHP:
$t = fopen("cookie.txt", "w"); 
foreach( $arr[1] as $ar){ 
    fputs($t, $ar); 
} 
    fclose($t);
вот так надо

парсится не конечный результат, его у тебя нет т.к. js код никто не обработал и не выполнил

Фактически ты парсишь имена переменных которые должны быть записаны в куки, и перед записью должен еще сгенерировать им значений на PHP

ты логику того что делать надо, походу, не понял
 
есно пишет только последний
ты же на каждой итерации создаешь новый файл
PHP:
$t = fopen("cookie.txt", "w"); 
foreach( $arr[1] as $ar){ 
    fputs($t, $ar); 
} 
    fclose($t);
вот так надо
У меня стойкое впечатление, что $ar выглядит совсем не так, как фаил cookie.txt. Т.к. если использовать данные из cookie.txt все работает, а напрямую из $ar - нет.
 
Если с отключенным js есть все куки тогда в чем трабла? их ты должен автоматом получать в курл
 
Если с отключенным js есть все куки тогда в чем трабла? их ты должен автоматом получать в курл
В html коде видны так как показаны в этом топике, в браузер они не стявятся без джавы. Но все значения уже рассчитаны, значит считаются две последние куки на стороне сервера. Вроде все так. Но вполне возможно в этом снова есть логическая ошибка...
 
PHP:
$str="";
foreach($arr as $key => $val) $str=$str.$key.':'.$val.';';
echo $str;
как то так
 
если
Array
(
[0] => Array
(
[0] => document.cookie="параметр=MXхеш1Vk; expires=day, 01 Aug 01 01:01:01 GMT; path=/; domain=.domain.com;"
[1] => document.cookie='4d5e11111a56=1281078431-0-!0;path=/;expires='
[2] => document.cookie='d270d11111d173=bf0a111111739;path =/'
)
[1] => Array
(
[0] => параметр=MXхеш1Vk; expires=day, 01 Aug 01 01:01:01 GMT; path=/; domain=.domain.com;
[1] => 4d5e11111a56=1281078431-0-!0;path=/;expires=
[2] => d270d11111d173=bf0a111111739;path =/
)
)
то
PHP:
$str=implode("\r\n",$arr[1]);
echo $str;
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху