Merhaba genelde blogumda daha komplike PHP konularını ele almaya çalışıyorum. Fakat, özellikle PHP’ye yeni başlayan kişilerin en çok sorduğu sorulardan bir tanesi olan, PHP Formlarla Çalışmak POST GET REQUEST konusuna değinmek istiyorum.
Formlar, hem HTML dilinin hem de PHP’nin vazgeçilmezlerindendir. Aklınıza gelebilecek her türlü kullanıcı verisi girişi için formlar kullanılmaktadır. Filtre sayfaları, İletişim sayfaları, admin panel veri girişleri gibi pek çok konuda formlar kullanılmaktadır. Tüm bunların yanında Formlar, en çok hack açığı verilen yerler olarak öne çıkmaktadır. Dolayısı ile formlarla çalışırken ekstra güvenlik önlemleri almanız gerekmektedir.
PHP Formlarla Çalışmak POST GET REQUEST
PHP Formlar POST Methodu Kullanımı
POST Methodu PHP’de en çok kullanılan form methodu diyebiliriz. Verilerin gizli gönderilmesinden dolayı kullanılan bu method kullanıcıdan gelen verileri sadece POST Methodu ile almayı sağlar. Adres çubuğuna ekstra değişkenler tanımlamadığı için GET Metodundan daha güvenlidir diyebiliriz. Peki ama nasıl kullanılır.
Öncelikle bir html form oluşturalım ve methodunu POST olarak belirtelim;
<form method="POST" action="verial.php"> <input type="text" name="isim"> <br> <input type="text" name="soyisim"> <br> <input type="submit" value="Gönder"> </form>
Bu formdan gönderilen veriler verial.php sayfasına gidecektir. Şimdi verial.php sayfasından verileri alalım
if($_POST) { echo"Adınız ".$_POST["isim"]." Soyadınız ".$_POST["soyisim"]; }
İşte bu kadar verileri gönderdik ve aldık.
PHP Formlar GET Methodu Kullanımı
GET Metodu özellikle filtre sayfalarında kullanılan bir method olarak öne çıkmaktadır. Girilen veriler adres çubuğuna yansımaktadır. Dolayısı ile sayfalama yapıldığında veriler diğer sayfalara da aktarılabilmektedir. GET Methodunun en kötü tarafı hack durumlarına en müsait olan durumları yaratmasıdır. Bu nedenle son derece güvenli kod yazmanız gerekmektedir.
Yukarıdaki formun aynısını GET metodu olarak yapacak olursak sadece method=”POST” olan kısmı method=”GET” olarak değiştirmeniz yeterli olacaktır.
Formdan gönderilen veriler yine verial.php sayfasına gidecektir. Formdan gelen verileri verial.php sayfasında almak istersek
if($_GET) { echo"Adınız ".$_GET["isim"]." Soyadınız ".$_GET["soyisim"]; }
şeklinde alabiliriz. Ancak dediğim gibi bu şekilde basit bir örnek verdik. Daha kapsamlı projelerde muıtlaka PHP’nin strip_tags ve benzeri güvenlik fonksiyonlarını kullanarak verileri alıp işlemek gerekmektedir.
PHP Formlar REQUEST Methodu Kullanımı
Request methodu POST ve GET methodu ile gönderilen verileri almamıza yarar yani her iki şekilde gönderilen verileri de PHP tarafında alabilirsiniz.
Mesela GET ile gönderilen form değerlerini verial.php sayfasında şu şekilde de alabilirdik.
if($_REQUEST) { echo"Adınız ".$_REQUEST["isim"]." Soyadınız ".$_REQUEST["soyisim"]; }