Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MYSQL] zmiana hasła
Forum PHP.pl > Forum > Przedszkole
majorsk8
Kod
<?php
session_start();
$login=$_POST['login'];
$haslo=$_POST['haslo'];
$nowe=$_POST['nowe'];
$connect = mysql_connect("", $login, $haslo);
$db = mysql_select_db('mysql',$connect);
$query=mysql_query("update user set password=password('$nowe') where user ='$login'") or die ("error");
echo "Haslo zostalo zmienione!";
?>


Skrypt jest bardzo podrecznikowy i prosty. Zmienia haslo. Problem tkwi w odswiezaniu bazy danych. Po zmianie hasla skryptem musze odswiezyc recznie liste userow w MySQL Administrator i dopiero wtedy dziala. Nie wiem czy problem nie tkwi w sesji, czy w samym MySQL. Please Help
bregovic
Wydaje mi się że powinieneś dodać instrukcję FLUSH PRIVILEGES aby to działało. Pozatym przydałoby się pomyśleć trochę o bezpieczeństwie:
  1. <?php
  2. $login   = mysql_real_escape_string(trim($_POST['login']));
  3. $haslo   = mysql_real_escape_string(trim($_POST['haslo']));
  4. $nowe    = mysql_real_escape_string(trim($_POST['nowe']));
  5. $connect = mysql_connect("", $login, $haslo);
  6. $db      = mysql_select_db('mysql', $connect);
  7. $query   = "update user set password=password('".$nowe."') where user ='".$login."'; flush privileges;";
  8. $result  = mysql_query($query);
  9. if ($result === false) {
  10.    echo 'Błąd.';
  11. } else {
  12.    echo 'Hasło zostało zmienione.';
  13. }
  14. ?>
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.