Php 8 GET Formu

Php 8 GET Formu

PHP 8'de GET formu, verileri URL üzerinden gönderir ve bu veriler URL'de görünür hale gelir. GET formu, genellikle kullanıcıdan basit sorgu verileri almak ve URL ile paylaşılabilir sonuçlar üretmek için kullanılır.

1. GET Formunun Temel Yapısı

Bir HTML formu oluştururken, verilerin GET yöntemiyle gönderilmesini sağlamak için method="get" özelliği kullanılır. Form gönderildiğinde, form alanlarına girilen veriler URL'de sorgu parametreleri olarak yer alır.

Örnek GET Formu:

<!DOCTYPE html> <html lang="tr"> <head> <meta charset="UTF-8"> <title>GET Formu</title> </head> <body> <form action="process.php" method="get"> <label for="name">İsim:</label> <input type="text" id="name" name="name" required> <br> <br> <label for="age">Yaş:</label> <input type="number" id="age" name="age" required> <br> <br> <input type="submit" value="Gönder"> </form> </body> </html>

Bu form, kullanıcıdan bir isim ve yaş alır ve GET yöntemiyle process.php dosyasına gönderir.

2. GET Yöntemi ile Veri Alma

Form verileri GET yöntemi ile gönderildiğinde, URL şu şekilde görünecektir:

http://example.com/process.php?name=Ali&age=25

PHP'de GET yöntemiyle gönderilen verilere $_GET süper global dizisi ile erişilir.

process.php dosyasında veriyi şöyle alabilirsiniz:

<?php if ($_SERVER["REQUEST_METHOD"] == "GET") { // GET ile gönderilen verileri almak $name = $_GET['name']; $age = $_GET['age']; // Veriyi işleme echo "İsim: " . htmlspecialchars($name) . "<br>"; echo "Yaş: " . htmlspecialchars($age); } ?>
  • $_GET : GET yöntemi ile gönderilen verileri tutar. Veriler URL üzerinden gönderildiği için PHP, bu diziyi kullanarak URL’deki tüm parametrelere erişir.
  • htmlspecialchars() : Kullanıcıdan alınan verileri HTML karakterlerinden arındırarak güvenli hale getirir. Bu sayede XSS saldırılarına karşı korunma sağlanır.

3. GET ve URL Parametreleri

GET formu kullanırken veriler URL'ye eklenir. Bu, bazı durumlarda avantajlı olabilir çünkü URL'yi kopyalayarak başka birine gönderebilir ve aynı veriyi tekrar işletebilirsiniz. Ancak bu yöntem, verilerin gizli kalmasını gerektiren durumlar için uygun değildir (örneğin, şifre veya hassas bilgiler).

4. GET ve POST Arasındaki Farklar

  • GET: Veriler URL’de sorgu parametreleri olarak görünür. URL üzerinden paylaşılabilir, tarayıcıda geri ve ileri tuşları ile gezinebilir. Ancak veri boyutu sınırlıdır (yaklaşık 2000 karakter).
  • POST: Veriler HTTP isteğinin gövdesinde gönderilir ve URL’de görünmez. Büyük veri göndermek ve daha gizli işlemler için uygundur.

5. GET Yönteminin Avantajları ve Dezavantajları

Avantajlar:

  • URL ile paylaşılabilir: GET yönteminde veriler URL'de yer aldığı için, bu URL'yi paylaşarak aynı sonucu başkalarının da görmesi sağlanabilir.
  • Tarayıcı geri/ileri tuşları ile uyumlu: GET yönteminde veriler URL’de bulunduğundan tarayıcı geri ve ileri tuşları kullanılarak sayfalar arasında rahatça gezilebilir.
  • Veriler yer imi olarak kaydedilebilir: URL yer imi olarak kaydedilirse, aynı form verisi ile tekrar işleme yapılabilir.

Dezavantajlar:

  • Güvenlik: GET yöntemi URL üzerinden veri gönderdiği için, hassas bilgiler (şifre, kişisel bilgiler vb.) GET ile gönderilmemelidir.
  • Veri boyutu sınırı: GET yöntemi ile gönderilen verilerin boyutu sınırlıdır. Genellikle URL’nin maksimum uzunluğu tarayıcılar tarafından 2000 karakter civarında sınırlıdır.

6. GET Yöntemi Kullanım Senaryoları

  • Arama formları: Google gibi arama motorlarında arama formları GET yöntemi kullanır. Çünkü kullanıcılar aynı arama sonuçlarını paylaşabilirler.
  • Filtreleme işlemleri: Web sitelerinde kategori filtreleri, sayfa numaralandırmaları gibi işlemler GET yöntemi ile yapılır.
  • Sorgu parametreleriyle işlemler: Sayfa yenilenmeden URL'deki parametrelere göre veri gösterimi gibi işlemler GET yöntemiyle yapılabilir.

7. Örnek GET Uygulaması

Bir kitap arama formu oluşturduğunuzu düşünelim. Kullanıcı, kitabın ismini ve yazarını girecek ve sonuç URL’de görünecek:

<!DOCTYPE html> <html lang="tr"> <head> <meta charset="UTF-8"> <title>Kitap Arama Formu</title> </head> <body> <form action="search.php" method="get"> <label for="book">Kitap Adı:</label> <input type="text" id="book" name="book" required> <br> <br> <label for="author">Yazar:</label> <input type="text" id="author" name="author"> <br> <br> <input type="submit" value="Ara"> </form> </body> </html>

Kullanıcı formu doldurduğunda URL şu şekilde olabilir:

http://example.com/search.php?book=PHP+Eğitimi&author=Yazar+Adı

search.php dosyasında ise şu şekilde veriyi alabilirsiniz:

<?php if ($_SERVER["REQUEST_METHOD"] == "GET") { $book = $_GET['book']; $author = $_GET['author']; echo "Aranan Kitap: " . htmlspecialchars($book) . "<br>"; echo "Yazar: " . htmlspecialchars($author); } ?>

8. Sonuç

PHP 8'de GET formu, verilerin URL üzerinden gönderilmesi için kullanılır. URL'de sorgu parametreleri olarak gönderilen veriler, kolayca işlenebilir ve paylaşılabilir. Ancak hassas bilgilerin GET yöntemi ile gönderilmesi önerilmez. GET yöntemi daha çok arama, filtreleme ve kullanıcıya gösterilecek verilere uygun şekilde URL'de işlem yapılacak senaryolarda kullanılır.



Yorum Ekle

Üzerine gel