Autor | Zpráva | ||
---|---|---|---|
Joska123 Profil * |
#1 · Zasláno: 18. 7. 2009, 14:36:30
Čus, mam problém.
Mám přihlašování a odhlašování přes cookies ale mám malou chybu. Když přejdu na odhlaseni.php tak mi napíše odhlášeno ale neodhlásí se (Pořád se mi píše že moje heslo v cookies je dobré i když ho mažu.) Formulář přihlašování : <?php if(isset($_COOKIE['Estus-jmeno'])){ $profil1 = file_get_contents("Estus/uzivatele/".$_COOKIE['Estus-jmeno'].".html"); $rozdeleno = explode("<+\+|+/+>", $profil1); if($_COOKIE['Estus-heslo']==$rozdeleno[2]){ echo $_COOKIE['Estus-jmeno']."<BR>"; echo "<a href=\"Estus/uzivatele/odhlasit.php\">Odhlásit se</a>"; }} else echo "Nejste přihlášen !"; ?> Formulář odhlašování : <?php if(isset($_COOKIE['Estus-jmeno'])){ $profil = file_get_contents($_COOKIE['Estus-jmeno'].".html"); $rozdeleno = explode("<+\+|+/+>", $profil); if($_COOKIE['Estus-heslo']==$rozdeleno[2]){ setcookie("Estus-jmeno",""); setcookie("Estus-heslo",""); echo "<h1>Odhlášeno !</h1>"; } else echo "Pro vykonání této funkce musíte být přihlášen !"; } ?> Kamarád mi říkal něco s headery nebo tak nějak ale nepochopil jsem ho. Díky moc za KAŽDOU pomoc. |
||
Alphard Profil |
#2 · Zasláno: 18. 7. 2009, 14:55:49
Přihlašování se řeší přes session, tohle radši smažte. Jestli dobře chápu, že ukládáte heslo v plain textu do cookies, tak to teda potěš.
Inspirujte se ve FAQ. |
||
Joska123 Profil * |
#3 · Zasláno: 18. 7. 2009, 15:13:22
Alphard
Heslo ukládám v .sh1. Ok, zkusím to. Děkuji. |
||
Radim24 Profil |
#4 · Zasláno: 18. 7. 2009, 17:33:10
Mě nepřipadá jako dobrý nápad ukládat heslo do cookies. Nechápu proč. Pokud už chceš používat cookies tak by ti mělo stačit uložit něco jako $logged=1; a až ho odhlásíš tak mu nastavíš $logged=0; Nebo to můžeš zdokonalit a $logged=0 pro nepřihlášené návštěvníky a $logged>0 pro všechny přihlášené uživatele, kde $logged==1 je běžný uživatel a $logged>1 je někdo z redakčního nebo administračního teamu.
|
||
Joska123 Profil * |
#5 · Zasláno: 18. 7. 2009, 18:20:19
Radim : Tohle mě nenapadlo, díky, určitě to využiju.
Nevíš ale jak docílit toho aby se šlo odhlásit ? díky |
||
fuckin Profil |
#6 · Zasláno: 18. 7. 2009, 18:55:38
Radim24
A co kdyz budu chtet zjistit jeho id? A co kdyz zmenim rucne hodnotu cookie treba na 5, stanu se adminem? Parada. Doufam ze tam budou nejake citlive udaje. |
||
Lamicz Profil |
#7 · Zasláno: 19. 7. 2009, 05:22:02
fuckin: to je bezny, uz jsem takovy CMS videl, tam pro zmenu bylo to id v cookie, stacilo zjistit, jaky id ma admin ;)
Joska123: Tam musis nastavit te cookie cas do minulosti: setcookie('xxxxxx', '', time() - 1);. Jinak bych do toho cookie vubec nepletl (pominu-li např. trvalá přihlášení apod.), na to mame prece superglobalni pole $_SESSION (viz Alphard) |
||
fuckin Profil |
#8 · Zasláno: 19. 7. 2009, 07:33:17
Lamicz
Admin je vetsinou id = 1 ptze vzdy je prece prvni na webu. :D Takze hacknuti je otazkou vterin. Takove cms jsou ubohe, nechapu jak takovy **** mohou nekomu prodat. |
||
Joska123 Profil * |
#9 · Zasláno: 19. 7. 2009, 13:26:36
Lamicz
To jsem také skoušel, ale bohužel - marně. Když to mám zvlášť (Jen PHP kód na stránce) tak mi to funguje i takhle, ovšem jakmile to includuju někam na stránku kde před tím je nějaký výstup - nefunguje. |
||
fuckin Profil |
#10 · Zasláno: 19. 7. 2009, 13:45:02
Joska123
A divis se? Toto musi probihat pred vystupem. |
||
Joska123 Profil * |
#11 · Zasláno: 19. 7. 2009, 14:07:06
Fuckin
Ano, vím to, jen nechci mít formulář na přihlášení úplně nahoře na stránce nebo na zvláštní stránce. Proto sem se zeptal - Neexistuje nějaký způsob, jak to mít kdekoli na stránce, ale aby to fungovalo ? |
||
fuckin Profil |
#12 · Zasláno: 19. 7. 2009, 14:10:37
html si dej kam chces, php kod s overenim dej nahoru.
|
||
Joska123 Profil * |
#13 · Zasláno: 19. 7. 2009, 14:15:22
Fuckin
To vím taky, ale když mám php takhle : <?php if(isset($_POST['jmeno])){ Kód s ověřením } else { formulář } ?> Tak bych musel mít formulář NAD html, já bych ho ale chtěl UVNITŘ html. |
||
Grr Profil * |
#14 · Zasláno: 19. 7. 2009, 14:33:46
„Fuckin
To vím taky, ale když mám php takhle : <?php if(isset($_POST['jmeno])){ Kód s ověřením } else { formulář } ?> Tak bych musel mít formulář NAD html, já bych ho ale chtěl UVNITŘ html.“ tak dej ten formulář třeba do proměný $obsah.... a pak v divu kde chceš nmit formuláře dej akorát <?php echo "$obsah"; ?> ;);) :))) |
||
Joska123 Profil * |
#15 · Zasláno: 19. 7. 2009, 17:10:08
Grr
Ať dělám, co dělám, stejně nevím jak to myslíš... Pokusil jsem se to udělat tak, jak říkáš ale nešlo se ani přihlásit. =( |
||
Časová prodleva: 3 dny
|
|||
Radim24 Profil |
#16 · Zasláno: 22. 7. 2009, 12:42:23 · Upravil/a: Radim24
„Radim24
A co kdyz budu chtet zjistit jeho id? A co kdyz zmenim rucne hodnotu cookie treba na 5, stanu se adminem? Parada. Doufam ze tam budou nejake citlive udaje.“ Vždyť jsem mu psal ať nepoužívá cookies. Ale pokud si to už zvolí, tak by měl počítat s riziky. Metodu kterou jsem popsal používám při DB_sessions |
||
Časová prodleva: 15 let
|
0