9 - Yazarların Şifre Değiştirmesi

/ Category: , , , , , ,

Scriptte bir yazarın şifresini değiştirebilmesi ilk başta mümkün olmuyor. Şifresini değiştirmek isteyen bir yazar "Zekimisin yani ? :)" cevabını alıyor. Bunun için şifre değiştirme işlemini adım adım incelemek lazım.

Kontrol paneli (Tebdil-i Mekan butonu) inc/cp.php üzerinden çalışıyor. Burada şifre değiştirme formunu görürsünüz. Eski şifrenizi ve 2 defa yeni şifrenizi girmenizi istiyor. Ondan sonra da bu formdaki bilgileri inc/passwd.php 'ye gönderiyor.

inc/passwd.php dosyasında gelen verilerin kontrolleri yapılıyor. İşte burada $_SERVER["HTTP_REFERER"]; kodu ile o anki sayfaya hangi sayfadan gelindiğine bakılıyor. Bu aslında inc/passwd.php dosyasının adresini direkt olarak yazıp da siteye girilmesin diye düşünülmüş bir güvenlik. Buradaki kodların tamamı şu şekilde:

$site = $_SERVER["HTTP_REFERER"];
$site = explode("/", $site);
$site = $site[2];
if ($site != "www.terimler.net" and $site != "Terimler.net") {
echo "Zekimisin yani ? :)";
die;
}

Burada bir önceki refere sayfanın terimler.net 'e ait olması istenmiş. Yani gelinen adres değeri http://www.terimler.net/sozluk.php?process=cp gibi bir adres ise buradaki bilgileri "/" ile parçalayıp oluşan parçaların ikincisinin terimler.net ifadesini içerip içermediğine bakılmış. Burada tamamen PHP fonksiyonlarını bilmeniz gerekmekte. PHP biliyorsanız zaten demek istediğim şeyi anlamışsınızdır. Bilmiyorsanız kodları hiç bozmadan kendi web site adınızı terimler.net olacak yere yazın. Yani kendi site adınızın doğruluğunu kontrol etmiş olun.