![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 10 Pomógł: 0 Dołączył: 28.06.2005 Skąd: Płock Ostrzeżenie: (10%) ![]() ![]() |
Mam taki problem: za pomocą pliku wsadowego tworze baze z jednoczesnym wpisem rekordu administratora w tabeli urzednicy(pola:id, imie, nazwisko, login, haslo, status_admin). Wszystko ładnie, pięknie się wpisuje - hasełko jest szyfrowane (za pomocą funkcji password()), ale kiedy chcę odczytać ten rekord poprzez funkcję logującą - klapa.
Kod wygląda tak:
funkcja loguj wygląda tak:
Jeśli usunę drugi warunek w zapytaniu to bez hasła wyszukuje mi rekord ale jaki to wtedy ma sens. A podczas wpisywania hasło było szyfrowane ta samą metodą. Może ktoś ma jakiś pomysł o co tu chodzi? |
|
|
![]() |
![]() ![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 92 Pomógł: 0 Dołączył: 13.04.2005 Ostrzeżenie: (0%) ![]() ![]() |
sprawdzilem u mnie to dziala... wiec to napewno nie jest kwestia zapytania!!! a teraz pytanie jak u Ciebie wyglada haslo_urzednika... czy ma wystarczajaca dlugosc?(IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) bo jezeli jest to pole znakowe zakrotkie to tak sie bedzie dzialo.... jeszcze sprobowalbym wypisac zmienna $haslo i sprawdzic czy wszystko z nia OK ale wydaje mi sie, ze jest spoko... ewentualnie sprobuj md5 zamiast password - ale caly czas zwracaj uwage na rozmiar pola haslo_urzednika - musi byc o 1 wiekszy (jezeli dobrze pamietam) od liczby znakow w jakim koduje algorytm!!!
pozdrawiam |
|
|
![]()
Post
#3
|
|
Grupa: Przyjaciele php.pl Postów: 2 923 Pomógł: 9 Dołączył: 25.10.2004 Skąd: Rzeszów - studia / Warszawa - praca Ostrzeżenie: (0%) ![]() ![]() |
Wydaje mi sie ze jesli haslo przekroczy zakres to i tak funkcja password powinna uciag go do opowiedniej wielkosci, tak jak to jest przy md5.
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 10 Pomógł: 0 Dołączył: 28.06.2005 Skąd: Płock Ostrzeżenie: (10%) ![]() ![]() |
Zmieniłem na funkcję md5 i jest OK! A swoją drogą chyba miałeś racje z tą wielkością pola haslo_urzednika (miało tylko 8 znaków). Znalazłem na forum mysqla, info że pod md5 pole hasla musi byc przynajmniej 60-znakowe. Przerobiłem i jest git:) Dzięki i pozdro!!!
|
|
|
![]()
Post
#5
|
|
Grupa: Przyjaciele php.pl Postów: 2 923 Pomógł: 9 Dołączył: 25.10.2004 Skąd: Rzeszów - studia / Warszawa - praca Ostrzeżenie: (0%) ![]() ![]() |
Cytat Znalazłem na forum mysqla, info że pod md5 pole hasla musi byc przynajmniej 60-znakowe. Cos chyba nie tak, bo md5 to 32 znaki. Mozesz podac linka do tego posta? Chcialbym to przeczytac. |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 10 Pomógł: 0 Dołączył: 28.06.2005 Skąd: Płock Ostrzeżenie: (10%) ![]() ![]() |
Sorry, źle odczytałem gościa. Pisze, że u niego to pole ma 60 znaków.(IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif) Tu masz link do tej stronki: http://dev.mysql.com/doc/mysql/en/encryption-functions.html
Pierwszy post. |
|
|
![]()
Post
#7
|
|
Grupa: Przyjaciele php.pl Postów: 2 923 Pomógł: 9 Dołączył: 25.10.2004 Skąd: Rzeszów - studia / Warszawa - praca Ostrzeżenie: (0%) ![]() ![]() |
Czyli mialem racje.
Cytat Calculates an MD5 128-bit checksum for the string. The value is returned as a binary string of 32 hex digits, or NULL if the argument was NULL. The return value can, for example, be used as a hash key.
|
|
|
![]()
Post
#8
|
|
Grupa: Przyjaciele php.pl Postów: 1 717 Pomógł: 0 Dołączył: 12.06.2002 Skąd: Wolsztyn..... Studia: Zielona Góra Ostrzeżenie: (0%) ![]() ![]() |
Ja tylko dodam, ze NIE POWINNO sie uzywac funkcji PASSWORD() w mysqlu.. ona jest uzywana wewnetrznie do hasel uzytkownikow, ale jest napisane, zeby jej nie uzywac w swoich aplikacjach.
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 24.08.2025 - 02:27 |