• 2

PHP' de Form'dan Gelen Verileri Güvenlik Filtrelerinden Geçirmek.

4 ay önce , Okuma süresi 1 dakika.

PHP' de  Form'dan Gelen Verileri Güvenlik Filtrelerinden Geçirmek.
Formlar, web sayfaların vazgeçilmezi, olmazsa olmazıdır. Bir sitenin güvenliğini tehdit eden en büyük unsurlardan biri sitemizdeki güvenlik açığı bulunan formlardır. Kötü niyetli kişiler formdan istemediğimiz kodlar, karakterler gönderebilir, veritabanımızı bozabilir, verilerimizi çalabilir kısacası sitemize zarar verebilir. Bu yazımda sizlere formdan gelen verileri PHP ile nasıl güvenlik filtrelerinden geçirip güvenliğimizi nasıl koruyacağımızı anlatacağım.

Bu yazıda senaryo olarak üyelik formunu işleyelim.

Html'de bir üyelik formu oluşturalım. 

	<form action="Sonuc.php" method="POST">
		   Adınız : <input type="text" name="Adi"> <br />
		   Soyadınız : <input type="text" name="Soyadi"> <br />
		   Email Adresiniz :<input type="email" name="EmailAdresi"> <br />
		   Kullanıcı Adınız : <input type="text" name="KullaniciAdi"> <br />
		   Parolanız : <input type="password" name="Parola"> <br />
		   <input type="submit" value="Gönder">
 	</form>

Formumuzu oluşturduk. Formu oluştururken nelere dikkat etmeniz gerektiğini kısaca değindiğim diğer yazımı inceleyebilirsiniz. 

Şimdi geçelim PHP kodlarımızı yazmaya.

İlk öncelikle formumuzdan gelen verileri action sayfasında yani Sonuc.php sayfasında yakalıyıp değişkene depolayalım.

 	$Adi = $_POST["Adi"];
 	$Soyadi = $_POST["Soyadi"];
 	$EmailAdresi = $_POST["EmailAdresi"];
 	$KullaniciAdi = $_POST["KullaniciAdi"];
 	$Parola = $_POST["Parola"];

Formdan gelen verileri değişkenlere depoladığımıza göre filtreleme işlemine geçebiliriz.

 	$FiltrelenmisAd = htmlspecialchars($Adi);
 	$FiltrelenmisSoyad = htmlspecialchars($Soyadi);
 	$FiltrelenmisEmail = htmlspecialchars($EmailAdresi);
 	$FiltrelenmisKAd = htmlspecialchars($KullaniciAdi);
 	$FiltrelenmisParola = htmlspecialchars($Parola);

Filtelemek için kullandığımız metot'un adı htmlspecialchars() tır.

Peki bu metot ne yapar ?

Örneğin: Biz sitemizde bir içeriği kalın olarak yazmak istiyorsak <b> etiketini kullanılırız. Html dosyası bu <b> etiketini görünce kapsama alanındaki içeriği kalın yazar. Kullandığımız metot sayesinde bu gibi etiketleri etkisiz hale getirip sql injection'dan kendimizi korumuş oluruz.

Filtrelemeyi yaptıktan sonra bu değişkenlerimizle işlemlerimizi yapabiliriz. 

Bir sonraki yazımda şifreleme metotlarını göstereceğim. Üyelik formundan aldığımız şifreyi saf halde veritabanında tutmak yerine şifrelenmiş halini tutarak, veritabanımızın kötü niyetli kişilerin eline geçmesi durumunda sitemize kayıtlı olan kullanıcıların güvenliğini ve gizliliğini sağlamak adına metotlarımızı uygulayacağız.

Beni takip etmeyi unutmayın..

İyi çalışmalar.

#Yazılım #php