PHP Dersleri Ders 8: Form Verileri Gönderme ve Yakalama ($_GET ve $_POST)

 Önceki dersimizde fonksiyonları görerek kodlarımızı modüler hale getirmeyi öğrenmiştik. Bu dersimizde ise web sitelerini statik olmaktan çıkarıp tamamen dinamik ve etkileşimli hale getiren, ziyaretçilerden gelen verileri işlememizi sağlayan Form Yönetimi konusunu işleyeceğiz.

Bir kullanıcının sitenize giriş yaparken, yorum yazarken veya bir arama kutusunu kullanırken gönderdiği verileri PHP tarafında yakalamak için iki temel küresel dizi (Süper Global) kullanırız: $_GET ve $_POST.

1. $_GET Metodu Verileri tarayıcının adres çubuğu (URL) üzerinden taşır. Güvenli olmayan ve gizlilik gerektirmeyen veriler için kullanılır.

  • Kullanım Alanları: Bloglarda arama kutuları, sayfalama (sayfa=2) veya kategori filtrelemeleri.

  • Özellikleri: Adres çubuğunda site.com/ara.php?kelime=php şeklinde görünür. Kullanıcı bu linki yer imlerine ekleyebilir veya başkasıyla paylaşabilir. Veri sınırı vardır.

2. $_POST Metodu Verileri arka planda, tarayıcı geçmişinde veya URL'de görünmeyecek şekilde gizlice sunucuya gönderir. Şifreli ve yüksek güvenlikli işlemler için zorunludur.

  • Kullanım Alanları: Kullanıcı giriş formları, kayıt formları, ödeme sayfaları veya blog yorum alanları.

  • Özellikleri: Adres çubuğunda hiçbir veri görünmez. Büyük boyutlu dosyalar veya uzun metinler bu metotla gönderilir.

Kod Örneği (HTML Formu ve PHP ile Yakalanması)

Aşağıdaki yapıda, bir kullanıcının adını alıp onu selamlayan basit bir POST formu senaryosu yer almaktadır:

<form action="" method="POST">

    <label>Adınız:</label>

    <input type="text" name="kullanici_adi">

    <button type="submit">Gönder</button>

</form>

<?php

  // Formun gönderilip gönderilmediğini kontrol ediyoruz

  if ($_SERVER["REQUEST_METHOD"] == "POST") {

      

      // HTML'deki inputun "name" değerini kullanarak veriyi yakalıyoruz

      $gelen_isim = $_POST["kullanici_adi"];

      

      // Güvenlik için boş olup olmadığını kontrol edelim

      if (!empty($gelen_isim)) {

          echo "Hoş geldin, " . $gelen_isim . "!";

      } else {

          echo "Lütfen adınızı boş bırakmayın.";

      }

  }

?>

Not: $_SERVER["REQUEST_METHOD"] komutu, sayfaya düz mü girildiğini yoksa bir form aracılığıyla POST mu edildiğini anlamamızı sağlar.

Bu metotlar sayesinde ziyaretçilerinizle iletişim kurabilen yapılar inşa etmeye başladınız. Bir sonraki dersimizde, web sitemizin sayfalarını birbirine bağlamayı ve harici kod dosyalarını tek bir merkezden yönetmeyi sağlayan "Sayfa Dahil Etme (Include & Require)" konusunu göreceğiz.

php form verisi, php post get, php dersi 8,









Hiç yorum yok:

Yorum Gönder