Php Web Formundan Bilgi Almak

Darkness DeviL

Yaşayan Forum Efsanesi
8 Ağu 2009
11,543
13
Turan 🇹🇷
sizinde bildiğiniz gibi dinamik bir sitede değişkenlerin değerleri kullanıcı tarafından sunucu sisteme yollanır. Bu iş için ya form yöntemi ya da adres satırından bilgi girişi yolu kullanılır. En yaygın ve kullanışlı olanı form yöntemidir.

<! --- ad_soyad.html --- >
<html>
<head><title>Ad ve Soyad Bilgisi</title></head>
<body bgcolor="#ffffff" text="#000000">
<form action="ad_soyad.php" method="get">
Adınız: <input type="text" name="ad"><br>
Soyadınız: <input type="text" name="soyad"><br>
<input type="submit" value="Gönder">
</form></body></html>



<?
################
# ad_soyad.php #
################
echo "Adınız $ad ve soyadınız $soyad.";
?>


Yukarıdaki örnek dosyaları yorum satırlarında belirtilen adlar ile yazıp kaydettikten sonra, istemcinizin adres satırına http://localhost/ad_soyad.html yazıp karşınıza çıkacak formu doldurun. "Gönder" düğmesine bastıktan sonra PHP dosyamız çalışacak ve bize istenilen çıktıyı verecektir. Burada dikkat etmeniz gereken nokta istemcinizin adres satırındaki bilgidir. Eğer ben formda adım için “Fehmi Noyan” soyadım içinse “ISI” (Türkçe karakter kullanmamak için büyük i kullanmadım) bilgilerini girersem adres satırında



gibi bir satır görünecektir. Dikkat ederseniz form ile gönderilen bilgilerin name="..." kısmının PHP dosyamızdaki değişken adlarını ve adres satırındaki PHP dosyası ve ? karakterinden sonraki kısımların PHP dosyamıza gidecek değişkenlerin değerini verdiğini fark edeceksiniz.
HTML dosyamızda oluşturduğumuz web formunda kullandığımız <input> etiketi içindeki name="..." kodu bize o etiket ile gelen bilginin action=”...” kodu ile belirtilen dosyada aynı isimli değişken olarak kullanılacağını belirtir. Web formunu doldurmadan da, sadece adres satırına yukarıdaki satırı girerek de formumuza bilgi yollayabiliriz. Satırda PHP dosyamızın isminden sonra bir ?& karakteri kullanılır, daha sonra her değişkenin adı ve değeri birbirinden karakteri ile ayrılır. Bu yol ile web formlarından bilgi göndermek mümkündür ama pek kullanışlı değildir.
Formumuzda get yöntemini kullandığımız için adres satırında girdiğimiz bilgiler görüntülendi. Aynı HTML dosyasını formun bilgileri gönderme metodunu post olacak şekilde ayarlayıp tekrar deneyin. Bu sefer adres satırında girilen hiçbir bilgi olmayacaktır. Yani sadece



gibi bir satır olacaktır. Ben örneklerimde bundan sonra post yöntemini kullanacağım.
Diziler
Diziler bazen kullanılması kaçınılmaz olan ve her PHP programcısının kullanımını bilmesi gereken elemanlardır. Adından da anlaşılacağı üzere, diziler bir tek değişkenin değeri içerisinde birden çok değer saklar. Mesela içerisinde haftanın günlerini barındıran bir dizi değişken

$hafta = array(“Pazartesi”, ”Salı”, ”Çarşamba”, ”Perşembe”, ”Cuma”, ”Cumartesi”);


şeklinde tanımlanabilir. Dikkat ederseniz haftanın son günü olan “Pazar” dizi içerisinde yer almıyor. Pazar’ı dizi içerisine dahil etmek için

$hafta[] = ”Pazar”;


şeklinde bir ifade kullanabiliriz. Böylece son belirtilen “Pazar” elemanı dizinin son elemanı olmuş olur.
Dizi içerisindeki bir elemanı ekrana yazmak için, mesela dizinin 3. elemanı,

echo $hafta[2];


komutu kullanılır. Dizinin 3. elemanı için neden “2” rakamını kullandık? Bunun sebebi dizilerin ilk elemanının 1. değil 0. eleman olmasıdır. Bir dizi değişkeninin eleman sayısı count() işlevi ile öğrenilebilir.

echo count($hafta);


ifadesi ekrana 7 rakamını basacaktır. Dizi değişkenleri ve bunlar üzerinde işlem yapan işlevler ile ilgili bilgiyi PHP Manuel’in “Array Functions” kısmında bulabilirsiniz.
 
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.