Navigate / search

Html Web Formlarına Giriş

Konuya girerken ilk önce HTML web formlardan bahsetmek istiyorum.Konumuz Html değil ama bilmeyenler veya unutanlar için tekrar hatırlatacağız konu içerisinde HTML’de formları.

Süper globallere girmeden öncede web form-php mantığından bahsetmek istiyorum.İnternette gezinirken hemen hemen hergün web formları ile karşılaşıyorsunuz.Googleda arama yaptığınız metin kutusu ve aramayı başlatmak için bastığınız buton web formları konusuna dahildir.Buna örnek olarak üye girişi yaptığınız kullanıcı adı ve parola girdiğiniz yada kayıt olurken email adresi telefon gizli yanıt gibi yerler web formlarıdır.

Bahsettiğimiz bu formlar html mantığı içe çalışır.Buradaki formlara girdiğimiz verileri gönder veya kaydet gibi butonlara bastığımızda bu bilgiler PHP ye gönderilir.Sonra yazdığımız kodlar ile bu bilgileri PHP içerisinde kullanabiliriz.

Formdaki verileri iki farklı metod ile gönderebiliriz.Bunların ilki GET diğeri ise POST metodudur.
Get metodunda gönderilen veriler kullanıcı tarafından adres satırında görülebilir.(…index.php?sayfa=indir) Post metodunda ise kesinlikle kullanıcı tarafından bu veriler görülemez.

Bir form oluşturmak için FORM tagları kullanılır.Form tagında kullanacağımız parametler ise method=”” ve action=”” ‘dır.
Method parametresinde gönderilecek verinin post ile yada get yoluyle olacağını belirliyoruz.
Action parametresinde ise butona basıldığında hangi dosyadaki komutları çalıştıracağımızı söylüyoruz.

1
2
<form action="oku.php" method="post">
</form>

evet formumuzu oluşturduk şimdi formumuzun içindeki item leri ekleyelim.Bir adet isim için bir adette email adresi yazmak isteyelim.Bunları yazdığımız kutuya textbox denir ve form tagları arasında şu komutla eklenir.

1
2
<input type="text" name="isim">
<input type="text" name="email">

Şimdide bir tane bu verileri göndermek için buton ekleyelim

1
<input type="submit" value="Gönder">

Şimdi bunları FORM tagları arasına yerleştirelim.
form.html

1
2
3
4
5
<form action="oku.php" method="post">
     <input type="text" name="isim">
     <input type="text" name="email">
     <input type="submit" value="Gönder">
</form>

Çalışmaya hazır bir formumuz oluşmuştur.Bilgileri doldurup gönder butonuna bastığımızda action=”oku.php” ‘ da yazdığımız gibi oku.php dosyasına bu veriler gönderilip oku.php dosyası çalıştırılacaktır.



Gönder butonuna basıp verileri oku.php ye gönderildiğinde oku.php içerisindeki kodlar çalışır.Buna kısa bir örnek yapalım sonra süpergloballeri görelim.
Post yada Get metoduyla gelen veriyi almak için süperglobal değişkenlerinden birini kullanmamız gerekir.Örneğimizi post ile yaptığımız için veriyi şu şekilde alacağız.

oku.php

1
2
3
$isim=$_POST[isim];
$email=$_POST[email];
echo "Formu dolduranın ismi $isim Email adresi $email";

Çalıştırdığımızda forma yazdığımız metinlerle bir yazı göreceksiniz ;)

split() ile Metni Özel Bir Karakterle Diziye Bölmek

Dizilere bölmek,Diziye Bölmek,Split komutunun kullanımı…..

Bir değişken içindeki bazı metinleri sayıları birbirinden bağımsız hale getirmemiz gerekir.Birbirinden bağımsız derken her birini farklı bir değişkene atmak yada bir dizi içinde ayırmak olabilir.Şimdi bir örnek yapalım.Bir değişken içerisinde 5 6 farklı kişnin adının kaydedildiğini varsayalım.Bunlarında virgül ile ayrıldığını düşünürsek şu şekilde isimleri bir diziye aktarabiliriz.

1
2
$isimler="ali,ahmet,veli,murat,hasan";
$isimler_dizi=split("[,]",$isimler);

Bu şekilde her kişi adını bir dizi içine atmış olduk.Şimdi bunları foreach ile yazdıralım.

1
2
3
4
5
$isimler="ali,ahmet,veli,murat,hasan";
$isimler_dizi=split("[,]",$isimler);
foreach ($isimler_dizi as $isim){
      echo $isim."<br>";
}

Örneği çalıştırdıysanız her bir ismin farklı farklı tutulduğunu göreceksiniz.
Şimdi biraz daha detaylı bir örnek yapalım.Bu sefer split() fonksiyonunun farklı bir kullanımını göreceğiz.Fonksiyonu kullanırken bir ayraç kullanmıştık.O ayracı her gördüğünde metni dizilere ayırıyordu.İşte o ayraç sayısını istediğimiz şekilde arttırabiliriz.Örneğin hem virgül hem nokta hemde soru işaret olan kısımları ayır diyebiliriz.

Örneğin web sitesinde kullanıcının doldurup bize gönderdiği bir form var.bu formada tarihi gün ay yıl olarak girecektir.Kimi kullanıcı gün ay yıl ı yazarken aralara “.” kimi kullanıcı ” /” kimi kullanıcı ise ” – ” koyabilir.Explode fonksiyonunda böyle bir istisnai durumu çözmemize imkan yoktur.Yine örneğimizden yola çıkarak biz bu tarihleri 3 farklı karakter kullanılarakta yapsak sorun çıkmadan nasıl yaparız.
Komutu şu şekilde kullanmamız gerekicek: split(“[/-.]“,$tarih)

1
2
$tarih="24/02/1987";
$detayli_tarih=split("[/-.]",$tarih);