Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 12.03.2011, 11:54   #1
pruf
Пользователь
 
Регистрация: 12.03.2011
Сообщений: 27
По умолчанию PHP+curl+useragent

Подскажите в чем ошибка, объявляю файл с юзер-агентами, подставляю
в curl. Отказывается работать и рандомно брать юзер-агентов.

Что не так? Где ошибка?

PHP код:
 function send_post($url,$post="") {

$ifile file('user_agent.txt');
 
$agent trim($ifile[0]);


$ch curl_init();
curl_setopt($chCURLOPT_URL$url);
curl_setopt($chCURLOPT_HEADER1);
curl_setopt($chCURLOPT_RETURNTRANSFERtrue);
curl_setopt($chCURLOPT_COOKIEFILEdirname(__FILE__) ."/cookie.txt"); 
curl_setopt($chCURLOPT_COOKIEJARdirname(__FILE__) ."/cookie.txt");
curl_setopt($chCURLOPT_CONNECTTIMEOUT30);
if (
$postcurl_setopt($chCURLOPT_POSTFIELDS$post);
curl_setopt($chCURLOPT_USERAGENT$agent);
$data curl_exec($ch);
curl_close($ch);
 return 
$data;


Последний раз редактировалось pruf; 12.03.2011 в 14:56.
pruf вне форума Ответить с цитированием
Старый 14.03.2011, 11:56   #2
pruf
Пользователь
 
Регистрация: 12.03.2011
Сообщений: 27
По умолчанию

апнем тему, может кто поможет.
pruf вне форума Ответить с цитированием
Старый 14.03.2011, 12:01   #3
SkyM@n
Laravel/Vue expert
Старожил Подтвердите свой е-майл
 
Аватар для SkyM@n
 
Регистрация: 08.08.2007
Сообщений: 2,832
По умолчанию

Цитата:
Сообщение от pruf Посмотреть сообщение
апнем тему, может кто поможет.
выдадим предупреждение, может кто правила прочитает.
SkyM@n вне форума Ответить с цитированием
Старый 14.03.2011, 13:53   #4
pruf
Пользователь
 
Регистрация: 12.03.2011
Сообщений: 27
По умолчанию

почему все заходят и уходят. неужели с curl некому не приходилось работать?
pruf вне форума Ответить с цитированием
Старый 14.03.2011, 15:35   #5
ssdm
Форумчанин
 
Регистрация: 20.05.2009
Сообщений: 506
По умолчанию

echo $agent - что возвращает ?
Цитата:
Отказывается работать и рандомно брать юзер-агентов.
Какое сообщение выводит ?
ssdm вне форума Ответить с цитированием
Старый 14.03.2011, 15:39   #6
ssdm
Форумчанин
 
Регистрация: 20.05.2009
Сообщений: 506
По умолчанию

Цитата:
и рандомно брать юзер-агентов.
Код:
$ifile = file('user_agent.txt');
 $agent = trim($ifile[0]);
- этот код должен рандомно возвращать юзер агент ??!!
ssdm вне форума Ответить с цитированием
Старый 14.03.2011, 16:34   #7
pruf
Пользователь
 
Регистрация: 12.03.2011
Сообщений: 27
По умолчанию

Цитата:
echo $agent - что возвращает ?
ничего, пустая страница.

Цитата:
Цитата:
Отказывается работать и рандомно брать юзер-агентов.
Какое сообщение выводит ?
скрипт нормально работает ошибок нет(вроде). непонятно скрипт когда работает реально берет юзер агентов или нет. выложил код на суд.

я его еще раз выложу только скажите мне будут юзер агенты рандомно браться или нет?.

PHP код:
function send_post($url,$post="") {

$ifile file("user_agent.txt");
 
$ifile shuffle($ifile);
 
$agent trim($ifile[0]);

$ch curl_init();
curl_setopt($chCURLOPT_URL$url);
curl_setopt($chCURLOPT_HEADER1);
curl_setopt($chCURLOPT_RETURNTRANSFERtrue);
curl_setopt($chCURLOPT_COOKIEFILEdirname(__FILE__) ."/cookie.txt"); 
curl_setopt($chCURLOPT_COOKIEJARdirname(__FILE__) ."/cookie.txt");
curl_setopt($chCURLOPT_CONNECTTIMEOUT30);
if (
$postcurl_setopt($chCURLOPT_POSTFIELDS$post);
curl_setopt($chCURLOPT_USERAGENT$agent);
$data curl_exec($ch);
curl_close($ch);
 return 
$data;

Цитата:
- этот код должен рандомно возвращать юзер агент ??!!
почти, забыл одну строку. вот так.
PHP код:
$ifile file("user_agent.txt");
 
$ifile shuffle($ifile);
 
$agent trim($ifile[0]); 
pruf вне форума Ответить с цитированием
Старый 14.03.2011, 16:50   #8
ssdm
Форумчанин
 
Регистрация: 20.05.2009
Сообщений: 506
По умолчанию

Код:
$ifile = file("user_agent.txt");
 $ifile = shuffle($ifile);
 $agent = trim($ifile[0]);
Имхо лучше так
Код:
$ifile = file("user_agent.txt");
 $num=rand(0,count($ifile)-1);
 $agent = trim($ifile[$num]);
  echo $agent."<---->".$num;
$num - номер строки откуда берем агента

проверь у себя что получится, открой файл и посмотри что у тебя на в файле на строке $num.
ssdm вне форума Ответить с цитированием
Старый 14.03.2011, 17:01   #9
pruf
Пользователь
 
Регистрация: 12.03.2011
Сообщений: 27
По умолчанию

сейчас выводит, значит работает.

Цитата:
Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; SV1; MRA 4.4 (build 01334); .NET CLR 1.0.3705; Media Center PC 3.1)<---->451
$num - это для проверки?, сервису который будет получать юзер агента это некчему.
pruf вне форума Ответить с цитированием
Старый 14.03.2011, 17:07   #10
ssdm
Форумчанин
 
Регистрация: 20.05.2009
Сообщений: 506
По умолчанию

Цитата:
Сообщение от pruf Посмотреть сообщение
сейчас выводит, значит работает.



$num - это для проверки?, сервису который будет получать юзер агента это некчему.
Да.
Код:
echo $agent."<---->".$num;
- это для проверки
Жду "+" к репутации )
ssdm вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Постинг в twitter.com через php curl не работает sergeiqwe PHP 1 26.01.2011 20:08
Как передать заголовки в php через CURL sergeiqwe PHP 1 07.11.2010 21:08
curl php javascript sergeiqwe PHP 2 06.11.2010 03:25
UserAgent в WebBrowser beemoto Работа с сетью в Delphi 1 19.07.2009 13:19
delphi for php как подключить curl OkeaH PHP 5 03.02.2009 01:48