390 likes | 871 Views
FORMLAR. FORMLAR. Formlar : <form……………….</form> etiketleri arasında yer alırlar. Dinamik web sitelerinde kullanılırlar. Formların Kullanım Yerleri. Anketler İletişim bilgilerin Yorum bölümleri Üyelik bölümleri Forumlar Sosyal paylaşım siteleri Alışveriş siteleri. Form Elemanları.
E N D
FORMLAR • Formlar : <form……………….</form> etiketleri arasında yer alırlar. Dinamik web sitelerinde kullanılırlar.
Formların Kullanım Yerleri • Anketler • İletişim bilgilerin • Yorum bölümleri • Üyelik bölümleri • Forumlar • Sosyal paylaşım siteleri • Alışveriş siteleri
Form Elemanları • Butonlar • Onay Kutusu (Checkbox) • Radyo Düğmesi (Radio) • Metin Kutusu (Textbox) • Gizli Elemanlar (Hidden)
Form Elemanları • Şifre Kutusu (Password) • Metin Alanı (Textarea) • Açılır Liste (Select) • Dosya Alanı (File) • Resim Alanı (Image
Form Özellikleri • Formların 3 temel özelliği vardır : • Action : Formdaki bilgilerin gönderileceği adres. • Method: Bilginin gönderilme yöntemi. Post veya Get. • Name: Formun ismi. • <form action=‘’url.adresi’’ method ‘’get/post’’ name=‘’formismi’’</form>
<input> Kullanımı • Genel amaçlı bir form etiketidir. Sonlandırıcı etiketi yoktur.
Metin Kutusu ( Textbox) Web sayfamıza bir metin kutusu koymak için yazılacak kod şöyledir: <body> <input type="text" name="metin" value="formuniçineyazılacakmetin" > </body>
Parola Metin Kutusu ( Password) Parola metin kutusu oluşturmak için yazacağımız kod : <inputtype="password" name="sifre" >
Onay Kutusu ( Checkbox) İşaretlemeli onay kutusu (checkbox) oluşturmak için yazacağımız kod : <body> <inputtype="checkbox" name="onaykutusu1" /> ev<br/> <inputtype="checkbox" name="onaykutusu2" />araba/> </body>
Radyo Düğmesi( Radio) Seçenek düğmesi (radiobutton) oluşturmak için yazacağımız kod : <inputtype="radio" name=" cinsiyet " value="bay" /> <br/> <inputtype="radio" name=" cinsiyet" value="bayan” /> Not: checkbox çoklu seçimlerde, radiobutton ise tek seçim yapılacak durumlarda kullanılır. Radiobuttonda seçeneklerden yalnızca biri seçileceği için name alanları aynı olmalıdır.
Dosya Alanı( File) Dosya göndermede kullandığımız dosya seçme elemanı (file) oluşturmak için yazacağımız kod : <input type="file" name="dosya" />
Metin Alanı (Textarea) • Formumuza uzun metinler yazmak için kullanılmaktadır. Örneğin adres bilgisi ya da yorum girişi için kullanılabilecek bir form elemanıdır. • <textarearows="5" cols="20" name="adres">mesajınızı buraya yazınız </textarea> şeklindekullanılır. • <textarea> ile kullanılan; • rows, satır sayısını belirtir • cols sütun sayısını belirtir.
Seçim Listesi (Combobox) Seçim listesi(combobox) oluşturmak için yazacağımız kod : <select name="islem"> <optionvalue="toplama"> topla </option> <optionvalue="cıkarma"> çıkar </option> <optionvalue="bolme"> böl </option> <optionvalue="carpma"> çarp </option> </select>
Gönder Butonu Form gönderme butonu (submit) oluşturmak için yazacağımız kod : <input type="submit" name="gonder" value="gönder”/>
Temizle Butonu Form temizleme butonu (reset) oluşturmak için yazacağımız kod : <input type=“reset" name=«temizle" value=“ temizle”/>
Örnek bir iletişim formu <body> <form action="mail.php" methot="post" name="mailform"> <p> İsim: <inputtype="text" name="isim" /> </p> <p> e-mail: <inputtype="text" name="mail" /> </p> <p> Mesaj: <textarea name="mesaj"></textarea> </p> <p> <inputtype="submit" value="Gönder" /> </p> </form> </body>
Formda gönderilen bilgiler form içerisindeki elemanların name alanında yer alan isim ile gönderilirler. • <inputtype="text" name="isim" /> • name="mail" • name="mesaj" • Not: Aynı formu dreamveawer ile oluştur.
GET ve POST Metodu Formlara girilen bilgiler gönder denildiğinde <form>...</form> etiketinin actionözelliğinde belirtilen sayfaya, yine aynı etiketin methodözelliğinde belirtilen yöntemle gönderililir. Örneğin; <form name=«iletisim" method="post" action=«iletisim.php"> şeklinde tanımlanan bir form yapısına göre formlara girilen bilgiler iletisim.php sayfasına post metoduyla gönderilecektir. BuradaGET ve POST olmak üzere iki tür method kullanılır.
GET Metodu • GET metodunda formlara girilen bilgiler adres çubuğunda gönderilirken görünürler. Formlara girilen bilgiler, sayfa adresinin sonuna şu şekilde eklenir. • http://www.site.com/sayfa.php?form1=değer1&form2=değer2&... • Burada form1, form2,... ile gösterilen ifadeler sayfada formlara verilen isimler yani name değerleridir. değer1, değer2,... ise kullanıcının bu formlara girdiği değerleri ifade etmektedir. Dikkat ederseniz tüm bunlar sayfa adresinden ? ile ayrılmakta, her form ve değerinin arasında & işareti bulunmaktadır. • Bu yöntemde; • Gönderilen bilgiler adres çubuğunda göründüğü için güvenlik düşüktür. Özellikle şifre girişlerinde kullanılmamalıdır. • Adres çubuğundan gönderilebilecek veri miktarı sınırlı olduğunda fazla miktardaki veriler gönderilemez.
Get Örnek Uygulama (Gönderme) <html> <body> <form name="kayit" method="get" action="kayit.php"> Adı: <inputtype="text" name="adi"><br> Soyadı: <inputtype="text" name="soyadi"><br> Doğum Yılı: <inputtype="text" name="dogum"><br> <inputtype="submit" name="kaydet" value="Kaydet"> </form> </body> </html>
Get Örnek Uygulama (Alma) <body> <?php echo "Adı: ".$_GET["adi"]."<br/>"; echo "Soyadı: ".$_GET["soyadi"]."<br/>"; echo "Doğum Yılı: ".$_GET["dogum"]."<br/>"; ?> </body>
POST Metodu • Bu metodda formlara girilen bilgiler gönderilirken görünmemektedir. • Bundan dolayı daha güvenilir. • Büyük miktardaki veriler de bu yöntemle gönderilmektedir.
Post Örnek Uygulama (Gönderme) <body> <form action="adres.php" method="post" name="adres_formu" > İsminiz: <inputtype="text" name="isim" /><br/> Yaşadığınız Şehir: <select name="sehir"> <optionvalue="canakkale">Çanakkale</option> <optionvalue="istanbul">İstanbul</option> <optionvalue="ankara">Ankara</option> </select><br/> Adresiniz:<br/> <textarea name="adres" rows="5"cols="20"></textarea><br/> <inputtype="submit" value="Gönder"/> <inputtype="reset" value="Temizle"/> </form> </body>
Post Örnek Uygulama (Alma) <body> <?php echo "İsminiz: ".$_POST["isim"]."<br/>"; echo "Yaşadığınız Şehir: ".$_POST["sehir"]."<br/>"; echo "Adresiniz: ".$_POST["adres"]."<br/>"; ?> </body>
Örnek: Dört İşlem <body> <form name="form1" method="post" action="hesapla.php"> Birinci Sayı: <inputtype="text" name="sayi1"><br> İkinci Sayı: <inputtype="text" name="sayi2"><br> İşleminizi seçiniz: <select name="islem"> <optionvalue="+">Topla</option> <optionvalue="-">Çıkar</option> <optionvalue="*">Çarp</option> <optionvalue="/">Böl</option> </select> <inputtype="submit" name="hesapla" value="Hesapla"> </form> </body>
Hesapla.php <body> <?php $s1=$_POST["sayi1"]; $s2=$_POST["sayi2"]; $islem=$_POST["islem"]; if($islem=="+") $sonuc=$s1+$s2; elseif($islem=="-") $sonuc=$s1-$s2; elseif($islem=="*") $sonuc=$s1*$s2; else $sonuc=$s1/$s2; echo "İşlemin Sonucu:<br>$s1$islem$s2=$sonuc"; ?> </body>
resim_gonder.php (gönderme) <form action="resim.php" method="post" name="formresim" enctype="multipart/form-data"> Resim Başlığı: <inputtype="text" name="baslik" /><br/> Yorumunuz: <textarea name="yorum" rows="5" cols="45"></textarea><br/> Resim Dosyası: <inputtype="file" name="dosya" /> <br/> <inputtype="reset" name="temizle" valeu="Temizle"/> <inputtype="submit" name="gonder" valeu="Gönder"/> </form>
enctype="multipart/form-data" = form özelliği. İletiye çeşitli türdeki içeriği eklemek için kullanılan bir internet standartı.
Resim.php ( Alma) <?php echo "Resim Başlığı:".$_POST["baslik"]."<br/>"; echo "Yorumunuz:".$_POST["yorum"]."<br/>"; echo "Resim Dosyası:"."<br/>"; @copy ($_FILES["dosya"]["tmp_name"],$_FILES["dosya"]["name"]); ?> <imgsrc="<?phpecho $_FILES["dosya"]["name"];?>" />
@Copy (string $kaynak, string $hedef) : Formdan gelen dosyanın sunucuya kopyalanması için kullanılır. • @copy ($_FILES["dosya"]["tmp_name"],$_FILES["dosya"]["name"]); • Paremetreleri : • Name : Dosyanın ismi • Type: dosyanın türü • Tmp_name: kaynak dosyanın kopyasının yolu • Error: aktarım esnasındaki hata kodu • Size:dosyanın boyutu • <imgsrc="<?phpecho $_FILES["dosya"]["name"];?>" /> Resmin ekranda gösterilmesi.