⊗ppPmAuPCh 429 of 447 menu

Paroles maiņa PHP

Paroles maiņu nevar vienkārši veikt personīgajā kontā. Lieta tāda, ka lietotājs var atstāt savu datoru bez uzraudzības (piemēram, birojā), būdams autorizējies mūsu mājaslapā. Šajā gadījumā, ja atļaut vienkārši mainīt paroli, tad ļaunprātīgais-nelabvēlīgais varēs nomainīt paroli uz citu, kas, protams, ir ļoti slikti.

Ir jāpanāk, lai paroles maiņa uz jaunu prasītu vecās paroles ievadi.

Realizēsim lapu changePassword.php, ierodoties kurā lietotājs redzēs formu ar diviem ievades laukiem - pirmajā viņam būs jā ievada sava vecā parole, bet otrajā - jaunā:

<form action="" method="POST"> <input name="old_password"> <input name="new_password"> <input type="submit" name="submit"> </form>

Nospiežot nosūtīšanas pogu, mums jāveic sekojošais:

<?php $id = $_SESSION['id']; // lietotāja id no sesijas $query = "SELECT * FROM users WHERE id='$id'"; $res = mysqli_query($link, $query); $user = mysqli_fetch_assoc($res); $hash = $user['password']; // sālītā parole no datu bāzes $oldPassword = $_POST['old_password']; $newPassword = $_POST['new_password']; // Pārbaudām vecās paroles atbilstību hash no datu bāzes if (password_verify($oldPassword, $hash)) { $newPasswordHash = password_hash($newPassword, PASSWORD_DEFAULT); $query = "UPDATE users SET password='$newPasswordHash' WHERE id='$id'"; mysqli_query($link, $query); } else { // vecā parole ievadīta nepareizi, izvadīsim ziņojumu } ?>

Realizējiet aprakstīto paroles maiņu.

Latviešu
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Mēs izmantojam sīkdatnes, lai nodrošinātu vietnes darbību, analīti un personalizāciju. Datu apstrāde notiek saskaņā ar Konfidencialitātes politiku.
pieņemt visus iestatīt noraidīt