Autor Zpráva
fire_cool
Profil *
Dobrý den,

mám více stránek a na druhou potřebuju vkládat to samé co vládám v první. Proto pomocí manuálu jsem si vytvořil/kopíroval

$ck = "/home/www/example.cz/www/cookie/write.txt";
$ch = curl_init();
      curl_setopt($ch, CURLOPT_COOKIEJAR, $ck);
      curl_setopt($ch, CURLOPT_URL,"http://www.example.cz/");
      curl_setopt($ch, CURLOPT_POST, 1);
      curl_setopt($ch, CURLOPT_POSTFIELDS, "nick=test&heslo=test");
echo  curl_exec ($ch);
      curl_close($ch);
 
// Nový CURL
$ch = curl_init();
      curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
      curl_setopt($ch, CURLOPT_COOKIEFILE, $ck);
      curl_setopt($ch, CURLOPT_URL,"http://www.example.cz/");
echo  curl_exec ($ch);
      curl_close($ch);

Prošel jsem spousty manuálů a nikde nenašel pořádné řešení. Po spuštění se udělá zápis do souboru, ale nikde nevidím cookie zápis. Přesně mi to zapíše:

# Netscape HTTP Cookie File
# http://curlm.haxx.se/rfc/cookie_spec.html
# This file was generated by libcurl! Edit at your own risk.

www.example.cz FALSE / FALSE 0 PHPSESSID 37c553f557b167f5045834fe1475a111

Ví někdo, kde dělám chybu? Předpokladám, že na místě false má být zapsaný cookie. Děkuju všem za čas a rady
Keeehi
Profil
Toto www.example.cz FALSE / FALSE 0 PHPSESSID 37c553f557b167f5045834fe1475a111 je ta cookie kterou hledáte. Je to jediná cookie, která přišla po odeslání prvního požadavku. Zároveň tato cookie by měla být odeslána spolu s druhým požadavkem. To, co jste sem poslal vypadá funkčně, nebo Vám to snad něco nefunguje?
fire_cool
Profil *
pokud je PHPSESSID cookie sezení, tak je špatný. Tvar cookie zápisu je jiný. Myslel jsem si, že PHPSESSID je něco jako id uživatele a místo false, tam má být správný zápis. Pokud to mám správně, tak jak pracovat dál? Děkuji
Mike8748
Profil
fire_cool:
jak špatný? když je špatně, jak má (podle tebe) vypadat správně?

Myslel jsem si, že PHPSESSID je něco jako id uživatele
ne. PHPSESSID je identifikátor session, což je (nejčastěji) soubor uložený na serveru který obsahuje data která jsou v php dostupná pres $_SESSION

tak jak pracovat dál?
těžko říct... nejspíš pracovat dál podle logiky aplikace (což jsi ale neřekl co by to mělo dělat)
fire_cool
Profil *
problém je, že se jedná o přihlášení pomocí cookie, který má jiný zápis. Jestli tedy rozumím správně, tak cookie se zapíše jako session a zápis, který provedu do souboru říká pod jakým id se má cookie (session) vytáhnout. Mě to, ale bohužel nefunguje. Možná proto, že se tam ukládá kód + uživatelské jméno. Praxe je taková, že se sice zápis do souboru provede, ale nepřihlásím se ani při prvotním odeslání.

Prvním odesláním se snažím provést přihlášení a druhým odeslání dat, který zadávám i na původní stránce. Můžu to dělat 2x, ale když je možnost to udělat jednou, tak proč se mučit. Jedna pracná funkce a pak si jen užívat :-)


Jen dodám, že po přihlášení se provádí redirekt. Pokud tedy není nalezen cookie, tak se tváří jako by se přihlášení vůbec neprovedlo. Chybovou hlášku předávám v sessionu a chybové hlášení se mi taky nezobrazí.


Už se nic neděje. Pochopil jsem už chybu a vše už maká
Davex
Profil
fire_cool:
Pochopil jsem už chybu a vše už maká
Čím to tedy konkrétně bylo? Někoho by to mohlo zajímat.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0