Есть список пост запросов, есть ссылка куда их посылать, как сделать так, чтобы каждый пост запрос из списка, по очереди поступил на эту ссылку ? на пхп еслиб ктонибудь написал такой скрипт, я был бы сильно благодарен
Раздел не тот. Ну используй sleep() что-ли.Или, к примеру: If <запрос> { if <запрос2> { if <запрос 3> и т.д.Условие выполнится только тогда, когда пройдет запрос.Надеюсь, я так понял вопрос.
PHP: <?php $url = "http://site.ru"; //ссылка $file=file("fields.txt"); //файл с запросами вида test=1&fap=100500 foreach($file as $f){ $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_POST, 1); //будет POST curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_POSTFIELDS, $f); curl_exec($ch); curl_close($ch); } ?>
извиняюсь за неграмотность в пхп, но как понять строку: curl_setopt($ch, CURLOPT_POST, 1); //будет POST а именно 1 ..и с какой скоростью будут перебираться пост запросы из списка ?
Эта строка означает что будет использоватся метод POST, а не GET. Запросы будут перебиратся в один поток, как только закончится первый, за ним идет сразу второй.
значит все будет зависеть от скорость сервера и интернета, на котором будет располагаться данный скрипт, я правильно понял ?
а как будет выглядеть скрипт, чтобы при получении определенного ответа появлялось сообщение и останавливалась посылка пост запросов ?
Вроде бы так: PHP: <?php $url = "http://site.ru"; //ссылка $file=file("fields.txt"); //файл с запросами вида test=1&fap=100500 $otvet = "";//нужный ответ foreach($file as $f){ $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_POST, 1); //будет POST curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $f); $res=curl_exec($ch); curl_close($ch); if($res==$otvet){ break; } } ?>
..только что залил данный пхп на хост, попробовал, начало грузить, затем все остановилось (через секунд 30) и выдало: "Соединение было сброшено" ..запросов у меня несколько тысяч и они все в столбик
set_time_limit(0); Может правильней использовать CURLOPT_HEADER, 1 if (strchr($res, "200 OK")) break; ?
та же проблема грузит грузит и потом соединение сбрасывается проблема может быть из за большого количества пост запросов ?