<?php
function createPostString($aPostFields) {
foreach ($aPostFields as $key => $value) {
}
}
$pattern = '#<input type="hidden" name="form_token" value="(.*?)" />#si'; //token
$pattern1 = '#<input type="hidden" name="lastclick" value="(.*?)" />#si'; //lastclick
"Host: www.piszemyrazem.foorx.pl",
"User-Agent: Mozilla/5.0 (Windows NT 6.1; rv:2.0) Gecko/20100101 Firefox/4.0",
"Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8",
"Accept-Language: pl,en-us;q=0.7,en;q=0.3",
"Accept-Encoding: gzip, deflate",
"Accept-Charset: ISO-8859-2,utf-8;q=0.7,*;q=0.7",
"Keep-Alive: 65535",
"Connection: keep-alive",
);
"Host: www.piszemyrazem.foorx.pl",
"User-Agent: Mozilla/5.0 (Windows NT 6.1; rv:2.0) Gecko/20100101 Firefox/4.0",
"Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8",
"Accept-Language: pl,en-us;q=0.7,en;q=0.3",
"Accept-Encoding: gzip, deflate",
"Accept-Charset: ISO-8859-2,utf-8;q=0.7,*;q=0.7",
"Keep-Alive: 65535",
"Connection: keep-alive",
"Content-type: text/plain",
);
$postFields['username'] = 'test123';
$postFields['password'] = '123456';
$postFields['login'] = 'Zaloguj się';
$postFields2['subject'] = 'czesc jestem nowy :)';
$postFields2['addbbcode'] = '100';
$postFields2['message'] = 'Witam!';
$postFields2['post'] = 'Wyślij';
$postFields2['attach_sig'] = 'on';
$postFields2['poll_title'] = '';
$postFields2['poll_option_text'] = '';
$postFields2['poll_max__options'] = '1';
$postFields2['poll_length'] = '0';
//Logowanie
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'http://www.piszemyrazem.foorx.pl/ucp.php?mode=login/');
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, createPostString($postFields));
curl_setopt
($ch, CURLOPT_COOKIEFILE
, dirname(__FILE__) . '/cookies2.txt');curl_setopt
($ch, CURLOPT_COOKIEJAR
, dirname(__FILE__) . '/cookies2.txt');curl_setopt($ch, CURLOPT_HTTPHEADER, $naglowki);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_exec($ch);
curl_close($ch);
//Zaloz temat - pobieranie tokenow
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'http://piszemyrazem.foorx.pl/posting.php?mode=post&f=23/');
curl_setopt($ch, CURLOPT_HTTPHEADER, $naglowki);
curl_setopt
($ch, CURLOPT_COOKIEFILE
, dirname(__FILE__) . '/cookies2.txt');curl_setopt
($ch, CURLOPT_COOKIEJAR
, dirname(__FILE__) . '/cookies2.txt');curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
$wynik=curl_exec($ch);
curl_close($ch);
$postFields2['form_token'] = $matches[1] ; //pobieranie tokena
preg_match('#<form id="postform" method="post" action="./posting.php\?mode=post&f=([0-9]+)&sid=(.*?)">#', $wynik, $matches1); $sid=$matches1[2]; //pobieranie sid'a
preg_match($pattern1, $wynik, $matches2); //pobieranie lastclick i creation time $postFields2['lastclick'] = $matches2[1];
$postFields2['creation_time'] = $matches2[1];
//wysylanie tematu
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'http://piszemyrazem.foorx.pl/posting.php?mode=post&f=23&sid='.$sid);
curl_setopt($ch, CURLOPT_HTTPHEADER, $naglowki2);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_HEADER, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, createPostString($postFields2));
curl_setopt
($ch, CURLOPT_COOKIEFILE
, dirname(__FILE__) . '/cookies2.txt');curl_setopt
($ch, CURLOPT_COOKIEJAR
, dirname(__FILE__) . '/cookies2.txt');curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$exit=curl_exec($ch);
curl_close($ch);
?>
Wysyłam chyba wszystko, i wszystko jest dobrze wyciągane [tokeny].
Ale kiedy wysyłam nowy temat to nie działa. Poprostu zwraca mi okno tworzenia nowego tematu.
W końcu wszystko ustawiłem na sztywno i chce napisać temat do pierwszego działu.
Ktoś wie gdzie popełniłem błąd?
//BBcode dodaje w nagłówkach w referer url zebyscie nie mysleli ze to to jest zle
ref
ref
Ten post edytował klumok 16.04.2011, 15:40:52