Nacteni kodu cizich stranek po prihlaseni na nich – PHP – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Nacteni kodu cizich stranek po prihlaseni na nich – PHP – Fórum – Programujte.comNacteni kodu cizich stranek po prihlaseni na nich – PHP – Fórum – Programujte.com

 

_dot_
~ Anonymní uživatel
4 příspěvky
4. 11. 2010   #1
-
0
-

Několik hodin googlení a pracování, ale bohužel ke správnému výsledku jsem se nedostal ...

Kód by měl udělat to, že se na stránkách přihlásí, a vrátí mi html kód stránek po přihlášení. Později to chci udělat univerzálně, nyní jsem zvolil například server uloz.to.

Problém je, že ani do první části kódu se nedostanou proměnné přes POST.



Prosim o radu, zejmena tedy s prvni casti, proc nedojde k prenosu promennych POSTEM. Nevypise totiz ani chybne prihlaseni ..

Predem dekuji

Zde je kód:


$url = parse_url('http://www.uloz.to/nastaveni/?do=authForm-submit');
$url['query']=isset($url['query'])?$url['query']:'';

$context = stream_context_create(array(
'http' => array(
'method' => 'POST',
'header' => "Content-Type: application/x-www-form-urlencoded\r\nContent-Length: ".strlen($url['query'])."\r\n",
'content' => http_build_query(array(
'username' => 'uzivatelske_jmeno',
'password' => 'heslo',
'login' => 'Přihlásit')
)
)
));



$fp = fopen("http://www.uloz.to/nastaveni/?do=authForm-submit", "r",0, $context);
// Zde se vypise stranka po prihlaseni pro vziti PHPSESSID v tomto pripade ULOZTOSESSID. Bohuzel se tak nestane.
$meta_data = stream_get_meta_data($fp);

fclose($fp);

// narychlo udelane prevzeti SESSID provizorne

$st1=explode('ULOZTOSESSID=',$meta_data["wrapper_data"][3]);
$st2=explode('; ',$st1[1]);


$SSID=$st2[0];

$url = parse_url('http://www.u l o z . t o/nastaveni/');
$url['query']=isset($url['query'])?$url['query']:'';

// Zde by melo dojit k vypsani stranky s novym ULOZTOSESSID, kdyz vsak nedoslo v predchozim kroku k prihlaseni, tak jsou stranky samozrejme stejne.

$context1 = stream_context_create(array(
'http' => array(
'method' => "POST",
'header' => "Cookie: ULOZTOSESSID=".$SSID."\r\nContent-Type: application/x-www-form-urlencoded\r\nContent-Length: ".strlen($url['query'])."\r\n"
)
));


echo $vystup = file_get_contents('http://www.uloz.to/nastaveni/', false, $context1);

Nahlásit jako SPAM
IP: 89.176.146.–
KIIV
~ Moderátor
+43
God of flame
4. 11. 2010   #2
-
0
-

nejak mi neni jasny to:
.strlen($url['query'])."\r\n",
'content' => http_build_query(array(
'username' => 'uzivatelske_jmeno',
'password' => 'heslo',
'login' => 'Přihlásit')

content-length je delka toho co teprve vytvaris az jako nasledujici... jeste tam pouzijes url['query'] ktery s tim nic spolecneho zda se nema

Nahlásit jako SPAM
IP: 94.142.234.–
Program vždy dělá to co naprogramujete, ne to co chcete...
_dot_
~ Anonymní uživatel
4 příspěvky
4. 11. 2010   #3
-
0
-

To KIIV :

no byl jsem nervni protoze to porad rvalo, ze jsem mu do headeru neodeslal delku, tak jsem to pajcnul z postupu na php.net.

Pak jsem prisel na to, ze chyba je jinde, jj opravim to na delku kontextu.

Ale nemyslim si ze by to mela byt ta pricina chybneho postu ..

Nahlásit jako SPAM
IP: 89.176.146.–
_dot_
~ Anonymní uživatel
4 příspěvky
4. 11. 2010   #4
-
0
-

v tom hornim to ani delku nechce, ale pri getovani pres file_get_context to Length vyzaduje striktne

Nahlásit jako SPAM
IP: 89.176.146.–
_dot_
~ Anonymní uživatel
4 příspěvky
4. 11. 2010   #5
-
0
-

Tedka mu odesilam pres post dalsi prvek, pri chbynem prihlaseni jiz vyhodi hlasku s chybou, pri zadani spravnych udaju se vsak nic nezmeni :-(

Nahlásit jako SPAM
IP: 89.176.146.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 5 hostů

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý