[PHP/SQL] MD5 w skrypcie

Języki, których efekty są wykonywane po stronie serwera. PHP, ASP czy CGI w połączeniu z bazami danych SQL dają niezwykłe możliwości budowy i zarządzania stron WWW. Tu zadajemy pytania oraz demonstrujemy kod, z którym mamy problem.
interkurs
Posty: 10
Rejestracja: pt wrz 30, 2005 2:44 pm

[PHP/SQL] MD5 w skrypcie

Post autor: interkurs »

Mam bazę orka z tabelą, która ma następujące pola:

nr | kody | hasla | uwagi

wstawiając do tabeli parę danych można to zrobić jak niżej.

[sql]INSERT INTO znaki VALUES (1, 'a8888888', 'borsuk12', '');
INSERT INTO znaki VALUES (2, 'annyyyyy', 'borsuk12', '');
INSERT INTO znaki VALUES (3, 'abgggg78', 'borsuk12', '');
INSERT INTO znaki VALUES (4, 'a7945999', 'borsuk12', '');
INSERT INTO znaki VALUES (5, 'a99yyy99', 'borsuk12', '');
INSERT INTO znaki VALUES (6, 'att99943', 'borsuk12', '');
INSERT INTO znaki VALUES (7, 'a9999rtt', 'borsuk12', '');[/sql]

Dane do pola kody dodaję skutecznie poniższym skryptem:
[php]<?php
$plik = file("kody.txt");

$p=mysql_connect("localhost", "root", "haslo");
mysql_select_db("orka", $p);
for ($i=0;$i<count($plik);$i++) {
$kody = trim($plik[$i]);
$kody="'$kody'";
$wynik=mysql_query("INSERT INTO sms (kody) VALUES($kody)", $p);
if (!$wynik) echo "<br>kod: <b>$kody</b> został dodany!";
}
mysql_close($p);
?>[/php]

Moja prośba o pomoc.
Jaki należy zastosować skrypt aby do tabeli znaki wstawiał do pola hasla symbole(litery i cyfry)
z pliku tekstowego o nazwie hasla.txt z zastosowaniem szyfrowania md5.
Ktoś mi radził aby do skryptu powyższego wstawić:

Kod: Zaznacz cały

$hasla=md5($hasla);
Niestety nie mogę sobie poradzić. Pomocy.
phpIker
Nowy
Nowy
Posty: 182
Rejestracja: śr lis 02, 2005 9:28 pm
Lokalizacja: Kraków

Re: [PHP/SQL] MD5 w skrypcie

Post autor: phpIker »

Przepuść zmienną z hasłem przed funkcję md5.

[php]
<?php
$plik = file("kody.txt");

$p=mysql_connect("localhost", "root", "haslo");
mysql_select_db("orka", $p);
for ($i=0;$i<count($plik);$i++) {
$kody = trim($plik[$i]);


$kody = md5($kody);

$kody="'$kody'";
$wynik=mysql_query("INSERT INTO sms (kody) VALUES($kody)", $p);
if (!$wynik) echo "<br>kod: <b>$kody</b> został dodany!";
}
mysql_close($p);
?>
[/php]

Potem gdy będziesz chciał odczytać czy hasło jest poprawne to zrób tak:

[php]
if(md5($_POST['haslo_podane_w_formularzu']) == $haslo_pobrane_z_bazy){
echo 'hasło jest poprawne';
} else {
echo 'złe hasło!!';
exit();
}
[/php]

Powinno działać, jak nie to pisz co i jak.
pozdrawiam
ODPOWIEDZ