Form Üzerinde GET ve POST İşlemleri
Hepinize merhaba dostlarım :) bu yazımda sizlere daha önceden örneklerde kullandığımız işlemleri yani form gönderiminde kullanılan GET ve POST methodlarından bahsedeceğim :). Bunlar kullanıcı iletişim sayfası olsun veri güncelleme olsun her yerde karşınıza çıkacaktır dostlarım :). Öğrenmek için heyecanlandığınızı biliyorum :). Sözü daha fazla uzatmadan gelin bunların ne olduğuna ufakça değinip sonrasında örneklerle pekiştirelim dostlarım :).
GET ve POST Nedir ?
Dostlarım beni biliyorsunuz teorik anlatımı uzun uzun ezberlemek yerine mantığını kapmayı seven ve bunu öneren birisiyim :) Konuya gelecek olursak
GET : Formdan gönderilen veri gideceği hedefe ilerlerken aynı zamanda url kısmında da bu giden verinin görünmesini sağlar dostlarım. Örnek vermek gerekirse bir haber scriptinde haberin seo başlığını bu şekilde get ile gönderip oradan verileri çekiyoruz diyebiliriz :). Gelin öncelikle GET methodu ile form göndermeyi deneyelim ve url kısmında nasıl göründüğüne bakalım
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Form Üzerinde GET ve POST işlemleri | MFSoftware Blog</title>
</head>
<body>
<form method="GET" action="islem.php">
<label for="">Adınız</label>
<input type="text" name="name">
<br>
<label for="">Soyadınız</label>
<input type="text" name="surname">
<br>
<button type="submit">Gönder</button>
</form>
</body>
</html>
Dostlarım bu şekilde bir form oluşturalım ve verileri de islem.php diye bir dosya oluşturup oraya iletelim. veriler aşağıdaki gibi olsun
name = "Mahmut";
surname = "Hoca"
verilerimiz bu şekilde olsun dostlarım. Şimdi bu verileri islem.php ye GET ile gönderdiğimizde url de bize görünen kısım
olarak görünecektir. Yöntem kullanışlı mıdır diye sorarsanız dostlarım form verilerini bu şekilde göndermek risklidir dostlarım :). Hadi biz burada kullanıcının şifresini de almış olsaydık nasıl yapacaktık ? Bir şekilde o veri url kısmında görünecekti örnek vereyim ona da
aynı bu şekilde görünecekti :). Peki hocam biz GET i nerede kullanacağız derseniz iki yer var bunun için
- <a></a> tag leri içerisinde href tanımlayarak HTTP GET isteği gönderebilirsiniz
- Site içi arama modülü yazdığınız zaman GET ile gelen isteği SQL üzerinde kontrol ettirip verileri çekebilirsiniz
bu iki işlemde kullanabilirsiniz dostlarım :). Şimdi gelelim post işlemine
POST : Dostlarım bu form methodu ise GET gibi içindeki inputlar şu bak bu gidiyor şunun değeri bu gibi işlemi asla söylemez :). Ha siz action kısmında mesela islem.php?id=3 yazarsanız form içindeki elemanlar POST ile gidecektir id değeri ise GET olarak gidecektir dostlarım :). Gelin bununla da bir örnek yapalım :). İsim Mahmut olsun, soyisim ise Hoca olsun tekrardan
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Form Üzerinde GET ve POST işlemleri | MFSoftware Blog</title>
</head>
<body>
<form method="post" action="islem.php?guncelle_id=1">
<label for="">Adınız</label>
<input type="text" name="name">
<br>
<label for="">Soyadınız</label>
<input type="text" name="surname">
<br>
<button type="submit">Güncelle</button>
</form>
</body>
</html>
Bu şekilde bir güncelleme formumuz olsun dostlarım. Buradan post edildiğinde bizim URL kısmımızda şu yazı çıkacaktır
Dostlarım şimdi bu veriler islem.php ye gitti ancak yukarıda belirttiğim gibi url kısmında GET değeri yani guncelle_id değeri geldi :) o da biz gönderdiğimiz için. Ama akıllardaki oluşan temel soru şu POST değerleri nerede ? Gelin onları da islem.php içerisinde ekrana bastıralım
<?php
// eğer guncelle_id verisi gelmiş ise
if(isset($_GET['guncelle_id'])){
$id = @$_GET['guncelle_id']; //--------------> id değeri alındı
$name = @$_POST['name']; //------------------> isim değeri alındı
$surname = @$_POST['surname']; //--------------> soyisim değeri alındı
// EKRANA YAZDIRALIM ŞİMDİ DE
echo "ID Değeriniz: ".$id.". Adınız: ".$name.". Soyadınız: ".$surname;
/*
EKRAN ÇIKTISI: ID Değeriniz: 1. Adınız: Mahmut. Soyadınız: Hoca.
*/
}
?>
Gördüğünüz gibi dostlarım input içerisindeki veriler gizlendi ve bizim action kısmında yazmış olduğumuz GET değeri URL kısmında gözüktü :).
Post ile gelen veriler de islem.php içerisine düştü ve biz de bunu örnek olarak echo ile alıp ekrana yazdırdık
Dostlarım form üzerinde kullanılan GET ve POST methodlarından elimden geldiğinde anlatmaya çalıştım. Umarım faydalı olmuşumdur. Hayallerinizi gerçekleştirmeniz ve güzel yerlere gelmeniz dileklerimle... İyi çalışmalar dilerim
Yazar Hakkında
Kendi Halinde Bir Backend Developer