PDA

Просмотр полной версии : Скрипт спамелки. Need Help /!\


Dr_SoF
05.02.2009, 18:35
У мя есть сайт test.ru с юзерами...
есть скрипт test.ru/user.php
test.ru/user.php?user=1
test.ru/user.php?user=2
test.ru/user.php?user=3
Переходя по ссылке попадаешь на страницу юзера и можно оставить комментарий.
Вот как можно оставить к каждому юзеру один и тот же коммент с 1 по 610.
Пытался передавать параметры скрипту типа user.php?user=1&comment=test Не вышло.
Комментарий постится через скрипт test.ru/add_comment.inc.php

Форма отправки комметна выглядит так:
<form action="add_comment.inc.php" name="add_comment" method="post">
<table width="100%" style="margin-top:1;" cellspacing="0" cellpadding="3" class="addcomment">
<tr>
<td align="left" width="100%"><b>Оставить отзыв:</b></td>
</tr>
<tr>
<td align="left" width="100%">
<textarea style="width:100%;" name="comment" rows="4"></textarea>
</td>
</tr>
</table>
<table class="addcomment" cellpadding="3" cellspacing="0" width="100%">
<tr>
<td align="left" width="100%" height="1em">&nbsp;</td>
</tr>
</table>
<table width="100%" style="margin-top:0;" cellspacing="0" cellpadding="3" class="addcomment">
<tr>
<td align="left">Имя: </td>
<td align="left" width="3"></td>
<td align="left" width="45%"><input maxlength="40" value style="width: 100%;" name="name" type="text"></td>
<td align="left" width="3"><input type="hidden" name="c_id" value="1"></td>
<td align="left">Email: </td>
<td align="left" width="3"></td>
<td align="left" width="45%"><input maxlength="40" value style="width: 100%;" name="email" type="text"></td>
<td align="left" width="3"></td>
<td align="right" width="32%"><input value="Добавить" style="width: 8em;" type="submit"></td>
</tr>
</table>
</form>

Передаваемые параметры:
comment - Сам коммент
name - Имя
c_id - id Юзера
email - мыло

Скрипт который был мне предложен в качестве рабочего:
<?
function PostRequest($url, $referer, $_data) {
$data = array();
while(list($n,$v) = each($_data)){
$data[] = "$n=$v";
}
$data = implode('&', $data);

$url = parse_url($url);
if ($url['scheme'] != 'http') {
die('Only HTTP request are supported !');
}

$host = $url['host'];
$path = $url['path'];

$fp = fsockopen($host, 80);

fputs($fp, "POST $path HTTP/1.1\r\n");
fputs($fp, "Host: $host\r\n");
fputs($fp, "Referer: $referer\r\n");
fputs($fp, "Content-type: application/x-www-form-urlencoded\r\n");
fputs($fp, "Content-length: ". strlen($data) ."\r\n");
fputs($fp, "Connection: close\r\n\r\n");
fputs($fp, $data);

$result = '';
while(!feof($fp)) {
// receive the results of the request
$result .= fgets($fp, 128);
}

fclose($fp);

$result = explode("\r\n\r\n", $result, 2);

$header = isset($result[0]) ? $result[0] : '';
$content = isset($result[1]) ? $result[1] : '';

return array($header, $content);
}


$data = array(
'comment' => 'test comment',
'name' => 'Your Name',
'c_id' => '1',
'email' => 'test@gmail.com'
);

list($header, $content) = PostRequest("http://test.ru/add_comment.inc.php", "http://test.ru/user.php?user=1", $data);

?>

Zitt
05.02.2009, 18:47
ну и??
не работает чтоле??

Dr_SoF
05.02.2009, 19:00
мистика.... стоило тему на ачате создать как заработало)
Ладна... вопрос в другом теперь... как модифицировать скрипт чтобы он оставил коммент не к одной записи а к указанному диапазону и после вывел отчет что сделал это... ?

blaga
05.02.2009, 19:07
засунуть все это дело в цикл for и крутить сколько нужно. по окончании показать сообщение что все ок.
совать весь скрипт не нужно только запуск функции.

fatalo
05.02.2009, 20:03
for ($i=0;$i<610;$i++){ тело цикла }

Dr_SoF
05.02.2009, 20:14
Спасибо уже разобрался...