Autor | Zpráva | ||
---|---|---|---|
Rob Profil |
#1 · Zasláno: 25. 9. 2005, 12:03:02
Potřebuji zakódovat heslo funkcí PASSWORD() z MySQL. Vypadá to trochu nepochopitelně, ale příklad.
<? $h = $_POST['heslo']; if ($h == 'nejakeheslo') { to co má udělat } else { echo 'špatné heslo'; } ?> No a aby bylo vše ještě o něco lépe zabezpečeno, tak chci, aby se dalo $h == šestnácti místný kód, který vyhazuje funkce password(). Aby to šlo, tak se musí $h zakódovat tou funkcí. Ale jak?? |
||
Leo Profil |
#2 · Zasláno: 25. 9. 2005, 16:24:01
Tak to kontrolujte v SQL prikazu do databaze, ne? Tam mate tu fci k dispozici. Leo
|
||
Rob Profil |
#3 · Zasláno: 25. 9. 2005, 17:49:58
Leo
Velmi zajímavý nápad, to mě nenapadlo. No uvidíme, stejně na těch stránkách bude asi registrace, takže ti kteří budou mít povolený přístup, budou mít své heslo a login. Ale ještě jednou díky. Tohle mě opravdu nenapadlo. |
||
Leo Profil |
#4 · Zasláno: 25. 9. 2005, 18:22:52
No vychazim z toho, ze to heslo mate ulozene v databazi, tak proc to neprevest primo v dotazu.
|
||
Rob Profil |
#5 · Zasláno: 25. 9. 2005, 20:35:26
Kdyby existovala možnost, jak by fungovala funkce PASSWORD() v PHP bez MySQL, tak bych tak učinil. Ono by to sloužilo pro přístup na jednu zaheslovanou stránku, takže by spojovat se s databází nebylo možná ani nutné. Já ještě přesně nevím, jak to bude ve výsledku vypadat, ani nevím, co všechno bude pod heslem. To se dozvím až po dohodě. Ale je to jedno. Děkuji za nápad a já se s tím už nějak poperu.
|
||
habendorf Profil |
#6 · Zasláno: 25. 9. 2005, 23:15:10
Ono by to sloužilo pro přístup na jednu zaheslovanou stránku, takže by spojovat se s databází nebylo možná ani nutné.
Hm, a kde ty loginy a hesla teda budou uložený? |
||
Rob Profil |
#7 · Zasláno: 26. 9. 2005, 13:37:26
habendorf
Ale ty ano, ale mě šlo o to, že kdyby tam bylo jenom jedno heslo. Prostě takhle: <? $h = $_POST['heslo']; if ($h == 'nejakeheslo') { to co má udělat } else { echo 'špatné heslo'; } ?> A přijde mi zbytečné se spojovat s MySQL jen kvůli tomu. |
||
Leo Profil |
#8 · Zasláno: 26. 9. 2005, 14:36:02
Pokud mate heslo primo v PHP jak zvysi uroven zabezpeceni to, kdyz misto
if ($_POST['heslo']=='praveheslo') tam budete mit neco ve stylu if (password($_POST['heslo'])==password('praveheslo')) Nejak nechapu duvod, Leo |
||
Rob Profil |
#9 · Zasláno: 26. 9. 2005, 18:16:08
Leo
Teď jste skoro pochopikl o co mi jde!!!! password('heslo') je to ono, ale já potřebuji, aby pomocí password bylo zakódováno již to, co přichází z formulářového okénka. Zkoušel jsem: $heslo = PASSWORD($_POST['heslo']); ale to nefunguje, proto jsem se obrátil na fórum jestli neexistuje možnost jak to udělat aby potom šlo udělat: $heslo = PASSWORD($_POST['heslo']); if ($heslo == ffg15fgd32f4ge68r7te54g) nebo co by to vyhodilo. |
||
Leo Profil |
#10 · Zasláno: 26. 9. 2005, 18:28:40
"ale já potřebuji, aby pomocí password bylo zakódováno již to, co přichází z formulářového okénka."
Zkuste si za domaci ukol rozmyslet kdy a kde se vykonava PHP skript :-) Leo |
||
Rob Profil |
#11 · Zasláno: 26. 9. 2005, 18:37:13
Leo
Prosim Vás, vím, že jsme se občas ptal na nesmysly, ale úplně blbej nejsem. Přirozeně, že jsem to pustil přes server, ale hodilo to nějakou error (fatal - myslím). Jen si to vyzkoušejte, a když to bude fungovat, tak mi to pošlete. Budu jen rád a přiznám, že jsem idiot. Ale na srveru jsem to zkoušel - PŘIROZENĚ!!!! |
||
Leo Profil |
#12 · Zasláno: 26. 9. 2005, 18:55:28
Pouzijte md5 a mate to, Leo
|
||
Rob Profil |
#13 · Zasláno: 26. 9. 2005, 20:11:14
Leo
EHM.......md5?????????? To mi taknějak nic neříká. |
||
Leo Profil |
#14 · Zasláno: 26. 9. 2005, 21:41:47
'EHM.......md5?????????? To mi taknějak nic neříká."
Viz manual PHP (www.php.net) nebo MySQL. Leo |
||
Pavka Profil |
#15 · Zasláno: 26. 9. 2005, 21:43:40
MD5 je hashovací algoritmus. Vyhodí to vždy 16b nebo 32b, teď si nejsem jistý a na to abych to počítal jsem línej :), řetězec. Tuto funkci obsahuje jak php, tak mysql. Komprimují se tím kódy většiny projektů.
|
||
Rob Profil |
#16 · Zasláno: 27. 9. 2005, 19:22:48
Pavka
NO tak díky za vysvětlení. |
||
Časová prodleva: 19 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0