![]() |
![]() ![]() |
![]() |
![]() ![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 92 Pomógł: 1 Dołączył: 3.11.2008 Skąd: Kozienice - Polska Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Mam problem. Potrzebuję utworzyć w jednej kolumnie w bazie danych (która zawiera ponad 6000 wierszy) hasła, które będą zakodowane w md5. Kolumna z hasłami znajduje się w tej samej tabeli. Mam taki kod: Lecz on ustawie wszystkie komórki hashem md5 z ostatniego wiersza. Tak to mniej-więcej wygląda w bazie danych: (IMG:http://iv.pl/images/61868172891833460959.png) Z góry dziękuje za pomoc! (IMG:style_emoticons/default/Lkingsmiley.png) |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 516 Pomógł: 63 Dołączył: 27.08.2012 Ostrzeżenie: (0%) ![]() ![]() |
a gdzie warunek w zapytaniu $zaktualizuj_rekordy ?
dodaj do zapytania np: WHERE kod = $kod and haslo = $haslo. Nie dziw się, że wszędzie przypisuje Ci takie samo hasło, skoro sam kazałeś to robić ;p |
|
|
![]()
Post
#3
|
|
Grupa: Moderatorzy Postów: 6 072 Pomógł: 861 Dołączył: 10.12.2003 Skąd: Dąbrowa Górnicza ![]() |
(IMG:style_emoticons/default/facepalmxd.gif)
Wykonaj po prostu takie zapytanie na bazie, bez zabawy w PHP i pętle...
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 282 Pomógł: 89 Dołączył: 12.04.2011 Ostrzeżenie: (0%) ![]() ![]() |
To co aktualnie robi ten kod:
1. Pobierz wszystkie rekordy, w szczególności $haslo. 2. Dla każdego rekordu wykonaj : w kolumnie md5_haslo ustaw md5($haslo) dla całej tabeli. Krótko mówiąc dla każdego hasła wielokrotnie zmieniasz całą tabelę, w związku z tym na sam koniec zostaje w całej tabeli ustawione haslo_md5 na hash ostatniego rekordu. Samo zapytanie mysql:
zrobi dokładnie to co potrzebujesz, to jest update na całą tabelę, dla każdego rekordu ustawi odpowiedni dla jego hasła hash. Nie potrzeba nic z bazy wcześniej wyciągać, nawet php do tego nie jest potrzebny, wystarczy wklepać to w konsoli mysql, phpmyadminie czy jakimkolwiek innym kliencie mysql. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 26.08.2025 - 16:41 |