PHP İş Başında (Formlarla PHP) PHP Programlama Dili PHP İş Başında (Formlarla PHP)
Formları Hatırlamak <BODY> <FORM ACTION="formlar02_isle.php" METHOD="GET"> Adiniz, Soyadiniz: <INPUT TYPE="TEXT" NAME="adi"> <br> Elektronik Adresiniz: <INPUT TYPE=TEXT" NAME="adres"> <br> <INPUT TYPE="SUBMIT" VALUE="Gönder Gitsin!"> <INPUT TYPE="RESET" VALUE="Vazgeç, Gönderme!"> </FORM> </BODY>
METHOD="GET" olduğu zaman... Formu doldurup ve Gönder düğmesini tıkladığınız zaman; Browser'inizdeki hata mesajına aldırmadan, URL adres kutusunda ne yazdığını okuyun: http://server/formlar02_isle.php?adi=Muharrem+Ta%E7&adres=muharremtac@mynet.com Bu, HTTP protokolüne göre GET yoluyla bilgi göndermekte kullanılan yöntemin tam bir örneğidir.
METHOD="POST" olduğu zaman... <FORM ACTION="formlar03a_isle.php" METHOD="POST"> HTTP açısından GET ile POST'un tek farkı gelen değerlerin nerede nasıl tutulduğundan ibaret değildir. GET yönteminde, bir Browser'in sunucuya gönderebileceği verinin uzunluğu, sunucunun ayarlarına bağlı olmak üzere, sınırlıdır. Oysa POST ile alacağımız veri miktarı, sadece sunucunun bulunduğu bilgisayarın sabit disk alanıyla sınırlıdır. Bir başka fark, Browser'in GET yoluyla gönderdiği verilerin tümü, sunucuya, URL-kodlanmış metin olarak, Browser'in URL adres hanesine de yazılmasıdır. Bir çok kullanıcı için bu bir güvensizlik belirtisi sayılır. Bu iki unsur Formlarımızda metod olarak GET yerine POST kullanmanın daha yerinde olduğunu gösterir.
Temel form elemanları Eleman tipi Açıklaması Örnek kod Görünüm text Metin kutusu <input name="metin" type="text" value="varsayılan değer" /> password Metin kutusu ile aynı fakat yazılanlar gösterilmez <input name="sifre" type="password" value="varsayılan değer"/> checkbox İşaretlemeli onay kutusu <input name="onay" type="checkbox" /> radio Radyo butonlar <input name="cinsiyet" type="radio" value="erkek" /> Erkek, <input name="cinsiyet" type="radio" value="kadin" /> Kadın Erkek, Kadın
Temel form elemanları textarea Geniş metin alanı <textarea name="metin">varsayılan değeri</textarea> select, option Seçim listesi ve seçim listesinin seçenekleri <select name="liste"> <option value="windows">Windows</option> <option value="linux">Linux</option> <option value="mac">MacOs</option> </select> submit Formu gönderme butonu <input name="gonder" type="submit" value="Gönder" />
Form Yaratımı <form action="index.php" method="post"> İsim: <br/> <input type="text" name="isim" /><br/> Soyisim: <br/> <input type="text" name="soyisim" /><br/> E-mail: <br/> <input type="text" name="mail" /><br/> Cinsiyet: <br/> <input type="radio" name="cinsiyet" value="e" /> Erkek<br/> <input type="radio" name="cinsiyet" value="k" /> Kadın<br/> Mesaj: <br/> <textarea name="mesaj"></textarea><br/> <input type="submit" value="Formu gönder" /> </form>
Formu Kontrol Etme <?php if(isset($_POST['kullanici']) && isset($_POST['sifre'])) { $kullanici = $_POST['kullanici']; $sifre = $_POST['sifre']; if(empty($kullanici) || empty($sifre)) { echo 'Lütfen boş bırakmayın'; } else { echo 'Girilen kullanıcı adı: ' . $kullanici . ' şifre: ' . $sifre; } } else { echo 'Lütfen formu kullanın'; } ?>