Dakle imam login skriptu al možda imam mali problem s njom jer password spremam u cookie kao md5 kriptirani to ne bi trebalo prdstavljat problem vjeroatno al što vi mislite? i nemojte spominjat sesije za njih znam al nemam tu mogućnost!
postoji i jedno i drugo! pa podaci za šifru su i spremljeni ubazi. razmišljao sam da generiram neki id pa da to spremam u cokie bi li to bilo bolje riješenje? ili da isključim cookie pa ip adrsu spremam u bazu al onda opet za trajni login bez cookie-a nemam ideje! što ti preporučaš?
Pa ako pogledaš kako sesije funkcionišu - isto to možeš da odradiš i simulacijom sesije, naravno malo više dodatnog pešačenja ... kad ti već provajder ne nudi sesije, napravi ih sam.
Nije mi jasno kako ti nisu sesije na raspolaganju? nio svejedno, napravi jednu cookie variablu koju ces zvati session pa u nju smestaj ID sesije koji ces sam da dodelis korsiniku.
Taj ID cuvaj i u bazi (ili datoteci na serveru) gde ces upisivati sve sto se tice te sesije pa i to da li je korisnik ulogovan. Tako ces kod korisnika imati samo jednu cookie promenljivu koja nema nikakvu korsinu informaciju za korisnika a samim tim i siguran sistem.
$id=md5(uniqid(rand(), true));
ja koristim ovo mislim da je dosta dobro i u mysql bazi polje je podešeno na unique nego pitanje dal da taj id mjenjam ili kod registracije ga dodijelim i da je stalan zauvijek?
koristi crypt(md5('bezveze_text1'.$UID.'bezveze_tekst2')); a nema ko ce to moci da provali ;) zbog md5, sem ako ne mislis da opensource-ujes program, ili ga prodajes, kad je bolje svakako da koristis sesije. Ovaj workaround ce da ti ustedi petljanje sa bazom
Ako je string, koristi addslashes()
A ako postoji mogucnost da ima i nekih html tagova: imas htmlentities i addslashes, a mozes i da uklonis sve tagove sa strip_tags()
ako je promenjiva niz, moraces da obradis svaki parametar posebno, ili kroz call_back F-ju ili rucno, kroz petlju
a uvek mozes da radis i encoding pre upisa sa base64encode ili nesto slicno.
Pored SQL i Code Injection napada moze da bude i XSS napad, koji moze da se primeti tek prilikom citanja iz baze; Ubaci vam neko neki JS kod , i vi kad ga iscitate, i kad korisnik to otvori u browseru, taj JS kod se izvrsi. Zato je korisno koristiti htmlentities, makar prilikom prikazivanja texta, ili jednostavno ukloniti sve tagove.
Ili htmlspecialchars prilikom izlaza svega sto nisi sam pisao
addslashes pre upisa svakog stringa u bazu
stripslashes v gore
addslashes i stripslashes potpuno iskljucuju SQL injection problem
register_globals je samo debilu moglo da padne na pamet da implementira uopste