Autor | Zpráva | ||
---|---|---|---|
cistax Profil |
#1 · Zasláno: 15. 6. 2009, 21:08:57 · Upravil/a: cistax
Dobrý den, mám problém s tím, že i když si nastavim cookies, je to jako by neexistovali, v jednom skriptu:
.... setcookie('hsh', $hash); .... su to cookies nastavim, a ve druhém: ... echo $_COOKIE["hsh"]; .... hlasi chybu: Notice: Undefined index: hsh in C:\PHPWebServer\http_docs\PEPA\diskuse\un_list.php on line 36 uz fakt nevim co s tim je, tak jestli nekdo mate nejaky napad, napiste prosim. // nemuze to byt tim, ze jsem to cookie nastavil v jednom scriptu a snazim se ho vybrat ve druhem (ale jsou oba ve stejnem adresari) |
||
AM_ Profil |
#2 · Zasláno: 15. 6. 2009, 21:29:12
máš zapnutý výpis PHP chyb? pokud ano, nehlásí to nic? cookie se musí posílat v hlavičce, takže setcookie musí být před výstupem.
Podívej se v prohlížeči do seznamu cookies, jestli se ti vůbec vytvoří; možná taky mizí proto, že jí nenastavuješ žádnou platnost, ale do uzavření prohlížeče by existovat měla |
||
cistax Profil |
#3 · Zasláno: 15. 6. 2009, 21:32:36 · Upravil/a: cistax
cookie se nastavuje ve skriptu kterej zpracuje loginovy formular, a jeste potom headeruje na jinou stranku, takze to mam udelat tak, ze jeste jednou nastavim v hlavicce stranky jine cookies a jak ze se pozna zapnuty vypis chyb?
//cookies se vytvori |
||
AM_ Profil |
#4 · Zasláno: 15. 6. 2009, 22:32:49
pokud pak posíláš header, mělo by to být v pořádku, pokud se cookie vytvoří v prohlížeči, tak tím spíš.
zkus si vypsat print_r($_COOKIE) |
||
cistax Profil |
#5 · Zasláno: 16. 6. 2009, 18:19:40
nj, divne prave jsem si vsiml ze se cookies nenastavuje, predtim se nastavovalo:(
|
||
cistax Profil |
#6 · Zasláno: 16. 6. 2009, 18:20:44
Pridavam cely kod:
toto je zpracujici script: <?php include("../../inc/db.php"); if(!empty($_POST["log_name"]) and !empty($_POST["log_pass"])){ $sql = "SELECT * FROM d_users WHERE jmeno='{$_POST["log_name"]}'"; $query = mysql_query($sql); $fetch = mysql_fetch_array($query); if(empty($fetch)){header("location: errorpass.php");exit;} $hash = md5(sha1(mt_rand(1000,1000000))); $hash = substr($hash, 1,10); $ins = "INSERT INTO hashe(kdo, jaky, kdy) VALUES('$fetch[id]', '$hash', NOW())"; $q = mysql_query($ins); setcookie("hsh", $hash); header("location: ../un_list.php?login=$fetch[id]"); } ?> a tohle je ta snaha o vypis cookie echo $_COOKIE["hsh"]; |
||
fuckin Profil * |
#7 · Zasláno: 16. 6. 2009, 18:26:57
kde nastavujes jejich dobu platnosti?!
|
||
cistax Profil |
#8 · Zasláno: 16. 6. 2009, 18:47:38
neni potreba, kdyz neni uvedena tak trvaji az do ukonceni, a i kdyz ji nastavim, tak problem zustava
|
||
fuckin Profil * |
#9 · Zasláno: 16. 6. 2009, 18:51:19
kdyz si vytvoris nejakou zkusebni cookie a pak to pole vypises pres print_r jde to?
|
||
cistax Profil |
#10 · Zasláno: 16. 6. 2009, 18:53:23 · Upravil/a: cistax
ne, vypise to array() kdyz to vypisu pres var_dump pise to Array(0){};
// ted jsem zjistil ze ten script ktery nechce to cookie vypsat je v nadrazenem adresari, ma to vliv? |
||
petr 6 Profil |
#11 · Zasláno: 16. 6. 2009, 20:39:26
„ted jsem zjistil ze ten script ktery nechce to cookie vypsat je v nadrazenem adresari, ma to vliv?“
Zjevne ma, mam ten samy problem. Cookie mam v podadresari a v nadrazenem adresari se skript chova, jako kdyz cookie neni nastaveno (!isset) (bohuzel reseni tohoto problemu stale heldam) |
||
Mastodont Profil |
#12 · Zasláno: 16. 6. 2009, 20:46:11
Co třeba nastavit path pro cookie na "/" pomocí session_set_cookie_params ?
|
||
cistax Profil |
#13 · Zasláno: 16. 6. 2009, 21:40:35
mastodont - nevite jak se to dela cetl jsem ze cookie ma nepovinny parametr cesty, ktery kdyz nezadate , tak se to vztahuje jen pro dany adresar, ale nikde jsem uz nenasel, jakym zpusobem tu cestu nastavim, nevíte?
|
||
nightfish Profil |
#14 · Zasláno: 16. 6. 2009, 22:16:33
|
||
petr 6 Profil |
#15 · Zasláno: 17. 6. 2009, 14:03:33
nightfish
U me nastaveni path na "/" ve funkci setcookie nepomaha (zkouseno v Opere) |
||
cistax Profil |
#16 · Zasláno: 17. 6. 2009, 15:03:07
ja jsem to vyresil tak, ze jsem po nekolika neuspesnych pokusech s pathem premistil script nastavujici cookies do adresare kde je potrebuju, ale i tak dekuji vsem za obetavost a rady.
|
||
Časová prodleva: 4 dny
|
|||
petr 6 Profil |
#17 · Zasláno: 21. 6. 2009, 12:06:14
Samozrejme nastaveni path na "/" nakonec pomohlo, jen jsem ho prvne zapomnel nastavit na obe mista ve skriptu, kde volam setcookie
|
||
Časová prodleva: 15 let
|
0