A JelszoModosit() függvény $_POST tömbben érkező adatok megtisztításával, a felhasználó IP címének lekérdezésével indul.
Ezt követi a jelszavak ellenőrzése, és ha nem történt hiba, akkor az új jelszó tárolása.
Hiba esetén a függvény visszatérési értéke hibakóddal jelzi a hiba helyét.
A kód a w3_regisztracio.php -ban található.
1. példa:
Forráskód
<?php
function JelszoModosit()
{
global $MySqliLink, $hozzaferes;
if (($hozzaferes > 4) and ($hozzaferes != 6)) {
// Csak a bejelentkezett felhasználók módosíthatnak a "demo" felhasználó kivételével
$HTMLkod = '';
$ErrorStr = '';
$r_ip = getip();
// Az űrlap adatainak megtisztítása
$Fnev = tiszta_szov($_POST['Fnev']);
$Fjelszo = tiszta_szov($_POST['Fjelszo']);
$Fujjelszo = tiszta_szov($_POST['Fujjelszo']);
$Fujjelszo1 = tiszta_szov($_POST['Fujjelszo1']);
// Az aktuális felhasználó rekordjának beolvasása
$SelectStr = "SELECT * FROM felhasznalo_reg WHERE Fnev='$Fnev'";
$result = mysqli_query($MySqliLink,$SelectStr) OR die("Hiba RG 23");
$row = mysqli_fetch_array($result, MYSQLI_ASSOC); mysqli_free_result($result);
$JSZ1 = $row['Fjelszo'];
$ID1 = $row['id'];
// A jelszó titkosítása
$Fjelszo = md5($Fjelszo);
// A jelszó ellenőrzése
if ($Fjelszo != $JSZ1) {$ErrorStr = $ErrorStr.'ERR01';}
// Az új jelszó ellenőrzése
if ($Fujjelszo != $Fujjelszo1) {$ErrorStr = $ErrorStr.'ERR13';}
if (6 > strlen($Fujjelszo)) {$ErrorStr = $ErrorStr.'ERR12';}
if ($ErrorStr '') {
// Az új jelszó titkosítása és tárolása
$Fjelszo = md5($Fujjelszo);
$UpdateStr = "UPDATE felhasznalo_reg SET Fjelszo = '$Fjelszo' WHERE Fnev='$Fnev'";
if (!mysqli_query($MySqliLink,$UpdateStr)) {die("Hiba RG 24");}
// A jelszómódosítás jellemzőinek tárolása a "felhasznalo_mod" táblába
$InsertIntoStr = "INSERT INTO felhasznalo_mod VALUES ('', ".$ID1.",'".$r_ip."','Jelszó módosítás',NOW())";
if (!mysqli_query($MySqliLink,$InsertIntoStr)) {die("Hiba RG 25");}
// A felhasználó korábbi jelszómódosításai számának lekérdezése
// Az utolsó 5 bejegyzés marad a többit törőljük
$SelectStr = "SELECT * FROM felhasznalo_mod WHERE Fid=$ID1 AND Ftev='Jelszó módosítás'";
$result = mysqli_query($MySqliLink,$SelectStr) OR die("Hiba RG 26");
$DbSzam = mysqli_num_rows($result); mysqli_free_result($result);
$DbSzamTorol = $DbSzam - 5;
if ($DbSzamTorol>0) {$DeleteStr = "Delete FROM felhasznalo_mod WHERE
Ftev='Jelszó módosítás' ORDER BY Datum LIMIT $DbSzamTorol";
if (!mysqli_query($MySqliLink,$DeleteStr)) {die("Hiba RG 27");}
}
}
if ($ErrorStr
'') {$ErrorStr = 'OK';}
}
return $ErrorStr;
}
?>
A webáruház megtekinthető és letölthető itt: Ingyen webáruház - W3 Free Shop