Zdravím. Občas mi přijde, že po sedmi letech v tomhle jazyce bych měl umět vše, vše vyřešit příp. najít. Ale proč mám furt nějaké potíže? xD
Vytvářím BOTa na server libimseti.cz. Mé poslední akce s BOTem na xChat dopadli úspěšně, bylo tedy na čase postoupit o lvl výše (libimseti.cz má přeci jen složitější strukturu, je přecpané JS apod.). Bohužel jsem se zasekl již v úvodu.
Pro odesílání POST dat využivíám knihovny http_lib
$data = array("e_login" => $Options->GetLogin(), "e_pass" => $Options->GetPass(), "a" => "1");
$data2 = array("referer" => "http://libimseti.cz");
$res = http_post_fields("http://libimseti.cz",$data,null, $data2);
Login i heslo se vloží v pořádku.
Kód formuláře:
<form method="post" action="http://libimseti.cz">
<p>
<input type="text" name="e_login" id="username2" value="" /><label>@libimseti.cz</label>
</p>
<p>
<input type="hidden" name="a" value="l">
<input type="password" name="e_pass" id="password2" value="" />
<input type="submit" value="ok" id="login-ok" />
<p>
<span>
<a href="http://registrace.libimseti.cz">registrovat</a>
</span>
</p>
</form>
Bohužel při odeslání dat přes výše zmíněný script nedojde k přihlášení, ani k přesměrování na jinou stránku, ani k výpisu, že se nepodařilo přihlásit.
Výpis dat:
stdClass Object
(
[type] => 2
[httpVersion] => 1.1
[responseCode] => 200
[responseStatus] => OK
[headers] => Array
(
[X-Powered-By] => PHP/5.2.0-8+etch13
[Expires] => Thu, 16 Apr 2009 15:37:43 GMT
[Cache-Control] => max-age=0, no-cache, must-revalidate
[Pragma] => no-cache
[Set-Cookie] => id_user=46840393; expires=Fri, 28-Aug-2009 23:11:03 GMT; path=/; domain=.libimseti.cz
[Content-Type] => text/html
[Connection] => close
[Date] => Thu, 16 Apr 2009 15:37:43 GMT
[Server] => lighttpd/1.5.0
[X-Original-Transfer-Encoding] => chunked
[Content-Length] => 33699
)
}
Napadá vás, proč mě to nechce pustit do systému? Neměl bych "nějak" odeslat ještě ifnormace ze submitu? Otázkou je však jak to udělat, když submit není pojmenovaný.