⊗ppPmAuPCh 429 of 447 menu

PHP'de Parola Değiştirme

Parola değişikliği kişisel hesapta basitçe yapılamaz. Bunun nedeni, kullanıcının bilgisayarını bizim sitemizde oturum açmış halde gözetimsiz bırakabilmesidir (örneğin, ofiste). Bu durumda, eğer parolayı basitçe değiştirmeye izin verilirse, kötü niyetli bir saldırgan parolayı başka bir parolayla değiştirebilir ki bu, elbette çok kötüdür.

Yeni bir parolaya değiştirmenin eski parolanın girilmesini gerektirmesi için yapılması gerekmektedir.

Hadi changePassword.php sayfasını gerçekleştirelim, bu sayfaya giren kullanıcı iki inputlu bir form görecek - ilkine eski parolasını, ikincisine ise yeni parolasını girmesi gerekecek:

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

Gönderme butonuna tıklandığında şunları yapmalıyız:

<?php $id = $_SESSION['id']; // oturumdan kullanıcının id'si $query = "SELECT * FROM users WHERE id='$id'"; $res = mysqli_query($link, $query); $user = mysqli_fetch_assoc($res); $hash = $user['password']; // Veritabanındaki tuzlanmış parola $oldPassword = $_POST['old_password']; $newPassword = $_POST['new_password']; // Veritabanındaki hash ile girilen eski parolanın eşleşmesini kontrol et 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 { // eski parola yanlış girildi, mesaj göster } ?>

Açıklanan parola değişikliğini gerçekleştirin.

Türkçe
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenЎзбекOʻzbekTiếng Việt
Web sitesinin çalışması, analiz ve kişiselleştirme için çerezleri kullanıyoruz. Veri işleme, Gizlilik Politikası'na uygun olarak gerçekleşir.
tümünü kabul et özelleştir reddet