Z gory sorrki za lamerskie pytanko ale naprawde nie mam juz sily - stawiam pierwsze kroki w php mam nadzieje ze mi pomozecie .....
...
Mam problem - odnosnie funkcji md5() - uzylem jej w skrypcie logowania ktory sprawdzalem chyba z 10 razy i gdy na pierwszy rzut oka wszystko dziala zero bledow to jest problem. Przy podawaniu prawidlowego hasla i loginu logowanie zawsze jest nieudane (tak jakby haslo roznilo sie od tego w bazie).
Rozlozylem wiec skrypt na czesci pierwsze i moja uwage przykula pewna rzecz odnosnie funckji md5().
Abstrachujac juz od samego skryptu logowania chcialbym sie podzielic tym co zauwazylem odnosnie funkcji md5() co moze miec wplyw na jego negatywne dzialanie; - nie wiem moze to jest normalne ale ja tego nie rozumiem.
Powiedzmy ze przykladowo mamy
Plik 4.html
<html>
<form method=post action=5.php>
<input type=password name=haslo>
<input type=submit>
</form>
</html>
i plik
5.php
<?
$md5 = md5('$haslo');
echo $md5;
?>
Efektem tego formularza jest wyswietlenie hasla w formie zaszyfrowanej
- to pozwala jednak podejrzec ze zwracane haslo to ciag znakow ze spacja na koncu. Podczas wprowadzania hasla do bazy po przez md5() haslo jest wprowadzane w formie zaszyfrowanej ale juz bez tej spacji na koncu.
Czemu tak sie dzieje , skad roznica skad ta spacja - przez nia te dwa hasla - to ktore jest wpisywane przez formularz i to ktore znajdue sie w bazie nie sa takie sam i podczas porownywania w skrypcie autoryzacji lgowanie jest nieudane.
Wszystko inne juz sprawdzalem ewidentnie problem tkwi w tej niechcianej spacji.
Co lepsze uzywalem funkcji trim() np trim($md5) i tez nic ..spacja sie pojawia.
NIe rozumiem .
Z gory dzieki pozdrawiam.