ºÝºÝߣ

ºÝºÝߣShare a Scribd company logo
Kullanıcı girişlerinin
iÅŸlenmesi
Celal Murat KANDEMÄ°R
ESOGÜ – Eğitim Fakültesi - BÖTE
twitter.com/cmkandemir
Contents
1. HTML Formlar – KullanıcıGirişlerinin
Ä°ÅŸlenmesi
2. GET ve POST farklılıklar
3. Sihirli cURL
4. Escaping user data
5. Dosyalar
HTML Formlar
HTML Formlar
 Kullanıcıların sunucuya veri gönderebilmeleri
tek yolu vardır –HTML Formlar
 Grirdirilmesi/gönderilmesi planlanan verinin
türünü belirleyen alanlar kümesidir.
 Sunucu formda doldurulan veriyi alır ve yeni bir
sayfa üretir.
 Gönderilen verinin alınabimesi için CGI betiklere
ihtiyaç vardır
ï‚­ Form verileri normal uygulamalardaki
argümanlar ile benzerlik gösterir.
Nasıl Çalışır
Kullanıcı veri girer ve gönderir. Form
Veriyi ileteceÄŸi bir "action" URL
özniteliğine sahiptir.
<?
echo "Welcome".$_POST ['username']."!";
?>
PHP betik veriyi
$_GETve $_POST
Diziler halinde alır ve çalıştırır.
…
<body>
Hoş geldinÇekirge!
…
Kullanıcının göndermiş olduğu
Verinin bir sonucu olarak
HTML üretir.
GET ve POST
$_POST ve $_GET
 PHP verileri $_GET ve $_POST dizileri içinde
alır.
ï‚­ URL parametreleri $_GET dizisine gider
 method="post" yöntemi ile fromdan
gönderilen veriler $_POST dizisindedir.
 İstek yöntemi post yöntemidir.
 Hangi istek yönteminin kullanıldığı $_SERVER
dizisinden kontrol edilebilir
 Her iki dizi de global’dir ve diğer diziler gibi
kullanılabilir
$_POST
ï‚® $_POST bir iliÅŸkisel dizidir
 Form giriş özniteliğindeki isimler(name özniteliği )
dizideanahtar/ilişkihaline dönüşür ve girilen verilere bu
iliÅŸkilerile eriliebilir
 Kullanıcı name= "name" özniteliğine sahip giriş
alanına "John"; name= "pass" özniteliğine sahip giriş
alanına "mypass" girerse
 test.php $_POST dizisini kullanır:
 $_POST['name']  "John"değerine sahip olur
 $_POST['pass"]  "mypass" değerine sahip olur
<form method="post" action="test.php">
<input type="text" name="name" />
<input type="password" name="pass" />
</form>
$_GET
ï‚® $_GET dizisi de iliÅŸkisel bir dizidir
 Aşağıdaki URL adres çubuğunda açılırsa:
ï‚­ test2.php betiÄŸi $_GET dizisinden
verileri alacaktır
 $_GET['page'] 1 değerine sahip olur
 $_GET['user']  "john" değerine sahip olur
http://phpcourse.com/test2.php?page=1&user=john
$_POST ve $_GET Karşılaştırma
 Get isteklerinde parametreler URL üzerinden iletilir
 Kullanıcıların bağlantı ya da işaret imi olarak sayfaya
eriÅŸimineolanak saÄŸlar
 URL 255 karakter ile sınırlıdır
 Post isteklerinde parametreler istek gövdesi
üzerinden gönderilir
 Kullanıcılar form üzerindeki gönderilecek verileri
doldurmadansayfayı açamazlar
 Dosya gönderimine izin verir
 Sınırsız boyutta (php.ini dosyasındakiayarın izin
İstekTürüTespiti
ï‚® $_SERVER['REQUEST_METHOD']dizi
elemanı istek türünü saklar
 'GET', 'POST', 'HEAD', 'PUT‘ değerlerinden
birine sahiptir
 Kullanıcıların veri gönderdiklerinin veya
URL’den henüz açıldığının tespit edilmesi
amacıyla kullanılabilir
 Büyük/küçükharf duyarlıdır!
HTML 5 Formlar
Web Sayfasından Kullanıcı Verilerinin
Girilmesi
HTML Formlar
 Formlar site ziyaretçilerinden veri toplamanın
en başta gelen yöntemidir.
 Form bloklarını yaratmak için:
 Örnek:
13
<form></form>
<form name="myForm" method="post"
action="path/to/some-script.php">
...
</form>
"action" niteliÄŸi form verilerinin hangi
sayfaya gönderileceğini söyler
“method" niteliği form verilerinin
nasıl gönderilmesigerektiğini söyler
– GET veya POST isteği üzerinden
Form Alanları
 Tek satır metin giriş alanı:
 Çok satır metin bölgesi alanı:
 Saklı (Hidden) alanlar kullanıcıya görünmeyen
verileri saklar:
 Genellikle JavaScript kodlar tarafından kullanılır 14
<input type="text" name= "ilkAdi" value= "Bu
bir metin alanıdır" />
<textarea name= "yorumlar">Bu bir çok satırlı
metin alanıdır</textarea>
<input type="hidden" name="hesap" value="Bu bir
gizli metin alanıdır." />
Fieldsets
 Fieldsets ilişkili form alanı gruplarını kapsamak
için kullanılırlar:
 <legend> fieldset başlığıdır.
15
<form method="post" action="form.aspx">
<fieldset>
<legend>Müşteri Detayı</legend>
<input type="text" id="isim" />
<input type="text" id="telefon" />
</fieldset>
<fieldset>
<legend>SipariÅŸ Detay</legend>
<input type="text" id="adet" />
<textarea cols="40" rows="10"
id="uyarilar"></textarea>
</fieldset>
</form>
Form GiriÅŸ Kontrolleri
ï‚® Checkboxes:
ï‚® Radio buttons:
 Radyo düğmeleri gruplanabilir, grup içinden
sadece birinin seçilmesine izin verilir:
16
<input type="checkbox" name= "meyve"
value="elma" />
<input type="radio" name="sifat" value="Bay."
/>
<input type="radio" name="sehir" value="izmir" />
<input type="radio" name= "sehir" value="ankara" />
DiÄŸer Form Kontrolleri
 Açılır Liste (Dropdown menus):
 Gönder (Submit) düğmesi:
17
<select name="cinsiyet">
<option value="1"
selected="selected">Erkek</option>
<option value="2">Kadın</option>
<option value="3">DiÄŸer</option>
</select>
<input type="submit" name="submitBtn"
value="Åžimdi Uygula" />
DiÄŸer Form Kontrolleri (2)
 Reset düğmesi – formu başlangış durumuna geri
getirir.
 Image düğmesi– gönderme düğmesi gibidir fakat
resim gösterilir ve tık koordinatı gönderilir
 Genel amaçlı düğme – Javascript içinde kullanılır,
versayılaneylem yoktur.
18
<input type="reset" name="resetBtn"
value="Reset the form" />
<input type="image" src=/slideshow/php-kullanc-girilerinin-lenmesi/124877420/"submit.gif"
name="submitBtn" alt="Gönder" />
<input type="button" value="bana tıkla" />
DiÄŸer Form Kontrolleri (3)
 Parola Girişi – Girilen metni * işareti ile
maskeler/gizler
 Çoklu seçim alanı – tek satır yerine çok satırda
madde listesi görüntüler
19
<input type="password" name="pass" />
<select name="urunler" multiple="multiple">
<option value="1"
selected="selected">klavye</option>
<option value="2">fare</option>
<option value="3">monitör</option>
</select>
DiÄŸer Form Kontrolleri (4)
 Dosya girişi– Dosyaları yüklemek için kullanılan
bir alandır
 Dosya yükleme yapılacağı zaman dosyayı
gönderme biçimini tanımlamak için enctype
niteliği kullanılır. Genelde multipart/form-data
değerini alır.:
20
<input type="file" name="foto" />
<form enctype="multipart/form-data">
...
<input type="file" name="foto" />
...
</form>
Etiketler
 Form etiketleri (label) , form alan ID’leri
kullanılarak açıklayıcı metin konmasını sağlar.
 Bir etikete tıklamak ilişkili alana odaklanılmasını
saÄŸlar (checkboxes terslenir (toggled), radio
düğmeleri seçili olur)
 Etiketler bir kullanılabilirlik ve erişilebilirlik özelliği
olup her ikisi de erişilebilirlik doğrulamasından
geçmek için gereklidir.
21
<label for="fn">Ä°lk Ä°sim</label>
<input type="text" id="fn" />
HTML Form – Örnek
22
<form method="post" action="apply-now.php">
<input name="subject" type="hidden" value="sinif" />
<fieldset><legend>Akademik Bilgi</legend>
<label for="derece">Derece</label>
<select name="degree" id="derece">
<option value="LS">Lisans</option>
<option value="YL">Yüksek Lisans</option>
<option value="DR" selected="selected">Doktora
Programı</option>
</select>
<br />
<label for="ogrenciNo">Öğrenci No</label>
<input type="password" name="ogrenciNo" />
</fieldset>
<fieldset><legend>KiÅŸisel Bilgiler</legend>
<label for="ilkAd">Ä°lk Ä°sim</label>
<input type="text" name="ilkAd" id="ilkAd" />
<br />
<label for="sadi">Soyadı</label>
<input type="text" name="sadi" id="sadi" />
form.html
HTML Form – Örnek(2)
23
<br />
Cinsiyet:
<input name="gender" type="radio" id="gm" value="m" />
<label for="gm">Erkek</label>
<input name="gender" type="radio" id="gf" value="f" />
<label for="gf">Kadın</label>
<br />
<label for="email">Eposta</label>
<input type="text" name="email" id="email" />
</fieldset>
<p>
<textarea name="terms" cols="30" rows="4"
readonly="readonly">KULLANIM ÅžARTLARI...</textarea>
</p>
<p>
<input type="submit" name="submit" value="Form Gönder" />
<input type="reset" value="Form Temizle" />
</p>
</form>
form.html (devam)
form.html (devam)
HTML Form – Örnek (3)
24
Range ve Spinbox
 Kullanıcıları sadece sayısal değer girmeleri
yönünde kısıtlar
 Ek özellikler min, max ve step ve value
ï‚­ Input tipine baÄŸlı olarak Spinbox veya ºÝºÝߣr,
form bileşeni olacağı belirlenir
 Farklı tarayıcılarda farklılıklar gösterebilir.
ï‚­ ºÝºÝߣrs ve Spinboxes Firefox üzerinde
çalışmazlar
 Standart textbox olarak görüntülenr. 25
<input type="range" min="0" max="100" />
<input type="number" min="0" max="100" />
HTML 5’ten Gelen Özellikler
ï‚® Autocomplete
 Tarayıcı öceden girilmiş değerleri saklar
 Aynı sayfaya yapılan sonraki ziyaretlerde
saklanmış değerler geri getirilir.
ï‚® Autofocus
 Alan sayfa yüklenirkenfocus alabilir. (seçili
olabilir)
ï‚® Required
ï‚­ Alan eÄŸer required (gerekli) ise
doldurmalı/seçilmelidir. 26
Doğrulamalı Giriş Alanları
 Eposta – eposta için basit bir doğrulama sağlar
 Doğrulama için bir örüntü (patern) verilebilir
ï‚­ Mobil cihazlarda eposta klavye getirir
 URL – url için doğrulama
ï‚­ Mobil cihazlarda url klavye getirir
ï‚® Telefon
 Sayısal klavye getirir
27
<input type="email" required="true"
pattern="[^ @]*@[^ @].[^ @]"/>
<input type="url" required="true" />
<input type="tel" required="true" />
TabIndex
ï‚® tabindex HTML niteliÄŸi ,TAB tuÅŸuna arka
arkaya basıldığında form alanları ve
bağlantılarınınhangi sırada gezileceğini
kontrol etmek amacıyla kullanılır.
 tabindex="0" (sıfır) - "natural" (doğal) sıra
ï‚­ EÄŸer X >Y, tabindex="X" sahip bileÅŸen
tabindex="Y " sahip bileşenden önce tekrarlanır
 Negatif tabindex’e sahip bileşenler atlanır,
bununla beraber, bu standartta tanımlı değildir
28
<input type="text" tabindex="10" />

More Related Content

PHP - Kullanıcı Girişlerinin İşlenmesi

  • 1. Kullanıcı giriÅŸlerinin iÅŸlenmesi Celal Murat KANDEMÄ°R ESOGÃœ – EÄŸitim Fakültesi - BÖTE twitter.com/cmkandemir
  • 2. Contents 1. HTML Formlar – KullanıcıGiriÅŸlerinin Ä°ÅŸlenmesi 2. GET ve POST farklılıklar 3. Sihirli cURL 4. Escaping user data 5. Dosyalar
  • 4. HTML Formlar ï‚® Kullanıcıların sunucuya veri gönderebilmeleri tek yolu vardır –HTML Formlar ï‚­ Grirdirilmesi/gönderilmesi planlanan verinin türünü belirleyen alanlar kümesidir. ï‚­ Sunucu formda doldurulan veriyi alır ve yeni bir sayfa üretir. ï‚­ Gönderilen verinin alınabimesi için CGI betiklere ihtiyaç vardır ï‚­ Form verileri normal uygulamalardaki argümanlar ile benzerlik gösterir.
  • 5. Nasıl Çalışır Kullanıcı veri girer ve gönderir. Form Veriyi ileteceÄŸi bir "action" URL özniteliÄŸine sahiptir. <? echo "Welcome".$_POST ['username']."!"; ?> PHP betik veriyi $_GETve $_POST Diziler halinde alır ve çalıştırır. … <body> HoÅŸ geldinÇekirge! … Kullanıcının göndermiÅŸ olduÄŸu Verinin bir sonucu olarak HTML üretir.
  • 7. $_POST ve $_GET ï‚® PHP verileri $_GET ve $_POST dizileri içinde alır. ï‚­ URL parametreleri $_GET dizisine gider ï‚­ method="post" yöntemi ile fromdan gönderilen veriler $_POST dizisindedir. ï‚­ Ä°stek yöntemi post yöntemidir. ï‚­ Hangi istek yönteminin kullanıldığı $_SERVER dizisinden kontrol edilebilir ï‚­ Her iki dizi de global’dir ve diÄŸer diziler gibi kullanılabilir
  • 8. $_POST ï‚® $_POST bir iliÅŸkisel dizidir ï‚­ Form giriÅŸ özniteliÄŸindeki isimler(name özniteliÄŸi ) dizideanahtar/iliÅŸkihaline dönüşür ve girilen verilere bu iliÅŸkilerile eriliebilir ï‚­ Kullanıcı name= "name" özniteliÄŸine sahip giriÅŸ alanına "John"; name= "pass" özniteliÄŸine sahip giriÅŸ alanına "mypass" girerse ï‚­ test.php $_POST dizisini kullanır: ï‚­ $_POST['name']  "John"deÄŸerine sahip olur ï‚­ $_POST['pass"]  "mypass" deÄŸerine sahip olur <form method="post" action="test.php"> <input type="text" name="name" /> <input type="password" name="pass" /> </form>
  • 9. $_GET ï‚® $_GET dizisi de iliÅŸkisel bir dizidir ï‚­ AÅŸağıdaki URL adres çubuÄŸunda açılırsa: ï‚­ test2.php betiÄŸi $_GET dizisinden verileri alacaktır ï‚­ $_GET['page'] 1 deÄŸerine sahip olur ï‚­ $_GET['user']  "john" deÄŸerine sahip olur http://phpcourse.com/test2.php?page=1&user=john
  • 10. $_POST ve $_GET KarşılaÅŸtırma ï‚® Get isteklerinde parametreler URL üzerinden iletilir ï‚­ Kullanıcıların baÄŸlantı ya da iÅŸaret imi olarak sayfaya eriÅŸimineolanak saÄŸlar ï‚­ URL 255 karakter ile sınırlıdır ï‚® Post isteklerinde parametreler istek gövdesi üzerinden gönderilir ï‚­ Kullanıcılar form üzerindeki gönderilecek verileri doldurmadansayfayı açamazlar ï‚­ Dosya gönderimine izin verir ï‚­ Sınırsız boyutta (php.ini dosyasındakiayarın izin
  • 11. Ä°stekTürüTespiti ï‚® $_SERVER['REQUEST_METHOD']dizi elemanı istek türünü saklar ï‚­ 'GET', 'POST', 'HEAD', 'PUT‘ deÄŸerlerinden birine sahiptir ï‚­ Kullanıcıların veri gönderdiklerinin veya URL’den henüz açıldığının tespit edilmesi amacıyla kullanılabilir ï‚­ Büyük/küçükharf duyarlıdır!
  • 12. HTML 5 Formlar Web Sayfasından Kullanıcı Verilerinin Girilmesi
  • 13. HTML Formlar ï‚® Formlar site ziyaretçilerinden veri toplamanın en baÅŸta gelen yöntemidir. ï‚® Form bloklarını yaratmak için: ï‚® Örnek: 13 <form></form> <form name="myForm" method="post" action="path/to/some-script.php"> ... </form> "action" niteliÄŸi form verilerinin hangi sayfaya gönderileceÄŸini söyler “method" niteliÄŸi form verilerinin nasıl gönderilmesigerektiÄŸini söyler – GET veya POST isteÄŸi üzerinden
  • 14. Form Alanları ï‚® Tek satır metin giriÅŸ alanı: ï‚® Çok satır metin bölgesi alanı: ï‚® Saklı (Hidden) alanlar kullanıcıya görünmeyen verileri saklar: ï‚­ Genellikle JavaScript kodlar tarafından kullanılır 14 <input type="text" name= "ilkAdi" value= "Bu bir metin alanıdır" /> <textarea name= "yorumlar">Bu bir çok satırlı metin alanıdır</textarea> <input type="hidden" name="hesap" value="Bu bir gizli metin alanıdır." />
  • 15. Fieldsets ï‚® Fieldsets iliÅŸkili form alanı gruplarını kapsamak için kullanılırlar: ï‚® <legend> fieldset baÅŸlığıdır. 15 <form method="post" action="form.aspx"> <fieldset> <legend>Müşteri Detayı</legend> <input type="text" id="isim" /> <input type="text" id="telefon" /> </fieldset> <fieldset> <legend>SipariÅŸ Detay</legend> <input type="text" id="adet" /> <textarea cols="40" rows="10" id="uyarilar"></textarea> </fieldset> </form>
  • 16. Form GiriÅŸ Kontrolleri ï‚® Checkboxes: ï‚® Radio buttons: ï‚® Radyo düğmeleri gruplanabilir, grup içinden sadece birinin seçilmesine izin verilir: 16 <input type="checkbox" name= "meyve" value="elma" /> <input type="radio" name="sifat" value="Bay." /> <input type="radio" name="sehir" value="izmir" /> <input type="radio" name= "sehir" value="ankara" />
  • 17. DiÄŸer Form Kontrolleri ï‚® Açılır Liste (Dropdown menus): ï‚® Gönder (Submit) düğmesi: 17 <select name="cinsiyet"> <option value="1" selected="selected">Erkek</option> <option value="2">Kadın</option> <option value="3">DiÄŸer</option> </select> <input type="submit" name="submitBtn" value="Åžimdi Uygula" />
  • 18. DiÄŸer Form Kontrolleri (2) ï‚® Reset düğmesi – formu baÅŸlangış durumuna geri getirir. ï‚® Image düğmesi– gönderme düğmesi gibidir fakat resim gösterilir ve tık koordinatı gönderilir ï‚® Genel amaçlı düğme – Javascript içinde kullanılır, versayılaneylem yoktur. 18 <input type="reset" name="resetBtn" value="Reset the form" /> <input type="image" src=/slideshow/php-kullanc-girilerinin-lenmesi/124877420/"submit.gif" name="submitBtn" alt="Gönder" /> <input type="button" value="bana tıkla" />
  • 19. DiÄŸer Form Kontrolleri (3) ï‚® Parola GiriÅŸi – Girilen metni * iÅŸareti ile maskeler/gizler ï‚® Çoklu seçim alanı – tek satır yerine çok satırda madde listesi görüntüler 19 <input type="password" name="pass" /> <select name="urunler" multiple="multiple"> <option value="1" selected="selected">klavye</option> <option value="2">fare</option> <option value="3">monitör</option> </select>
  • 20. DiÄŸer Form Kontrolleri (4) ï‚® Dosya giriÅŸi– Dosyaları yüklemek için kullanılan bir alandır ï‚­ Dosya yükleme yapılacağı zaman dosyayı gönderme biçimini tanımlamak için enctype niteliÄŸi kullanılır. Genelde multipart/form-data deÄŸerini alır.: 20 <input type="file" name="foto" /> <form enctype="multipart/form-data"> ... <input type="file" name="foto" /> ... </form>
  • 21. Etiketler ï‚® Form etiketleri (label) , form alan ID’leri kullanılarak açıklayıcı metin konmasını saÄŸlar. ï‚® Bir etikete tıklamak iliÅŸkili alana odaklanılmasını saÄŸlar (checkboxes terslenir (toggled), radio düğmeleri seçili olur) ï‚® Etiketler bir kullanılabilirlik ve eriÅŸilebilirlik özelliÄŸi olup her ikisi de eriÅŸilebilirlik doÄŸrulamasından geçmek için gereklidir. 21 <label for="fn">Ä°lk Ä°sim</label> <input type="text" id="fn" />
  • 22. HTML Form – Örnek 22 <form method="post" action="apply-now.php"> <input name="subject" type="hidden" value="sinif" /> <fieldset><legend>Akademik Bilgi</legend> <label for="derece">Derece</label> <select name="degree" id="derece"> <option value="LS">Lisans</option> <option value="YL">Yüksek Lisans</option> <option value="DR" selected="selected">Doktora Programı</option> </select> <br /> <label for="ogrenciNo">Öğrenci No</label> <input type="password" name="ogrenciNo" /> </fieldset> <fieldset><legend>KiÅŸisel Bilgiler</legend> <label for="ilkAd">Ä°lk Ä°sim</label> <input type="text" name="ilkAd" id="ilkAd" /> <br /> <label for="sadi">Soyadı</label> <input type="text" name="sadi" id="sadi" /> form.html
  • 23. HTML Form – Örnek(2) 23 <br /> Cinsiyet: <input name="gender" type="radio" id="gm" value="m" /> <label for="gm">Erkek</label> <input name="gender" type="radio" id="gf" value="f" /> <label for="gf">Kadın</label> <br /> <label for="email">Eposta</label> <input type="text" name="email" id="email" /> </fieldset> <p> <textarea name="terms" cols="30" rows="4" readonly="readonly">KULLANIM ÅžARTLARI...</textarea> </p> <p> <input type="submit" name="submit" value="Form Gönder" /> <input type="reset" value="Form Temizle" /> </p> </form> form.html (devam)
  • 24. form.html (devam) HTML Form – Örnek (3) 24
  • 25. Range ve Spinbox ï‚® Kullanıcıları sadece sayısal deÄŸer girmeleri yönünde kısıtlar ï‚­ Ek özellikler min, max ve step ve value ï‚­ Input tipine baÄŸlı olarak Spinbox veya ºÝºÝߣr, form bileÅŸeni olacağı belirlenir ï‚­ Farklı tarayıcılarda farklılıklar gösterebilir. ï‚­ ºÝºÝߣrs ve Spinboxes Firefox üzerinde çalışmazlar ï‚­ Standart textbox olarak görüntülenr. 25 <input type="range" min="0" max="100" /> <input type="number" min="0" max="100" />
  • 26. HTML 5’ten Gelen Özellikler ï‚® Autocomplete ï‚­ Tarayıcı öceden girilmiÅŸ deÄŸerleri saklar ï‚­ Aynı sayfaya yapılan sonraki ziyaretlerde saklanmış deÄŸerler geri getirilir. ï‚® Autofocus ï‚­ Alan sayfa yüklenirkenfocus alabilir. (seçili olabilir) ï‚® Required ï‚­ Alan eÄŸer required (gerekli) ise doldurmalı/seçilmelidir. 26
  • 27. DoÄŸrulamalı GiriÅŸ Alanları ï‚® Eposta – eposta için basit bir doÄŸrulama saÄŸlar ï‚­ DoÄŸrulama için bir örüntü (patern) verilebilir ï‚­ Mobil cihazlarda eposta klavye getirir ï‚® URL – url için doÄŸrulama ï‚­ Mobil cihazlarda url klavye getirir ï‚® Telefon ï‚­ Sayısal klavye getirir 27 <input type="email" required="true" pattern="[^ @]*@[^ @].[^ @]"/> <input type="url" required="true" /> <input type="tel" required="true" />
  • 28. TabIndex ï‚® tabindex HTML niteliÄŸi ,TAB tuÅŸuna arka arkaya basıldığında form alanları ve baÄŸlantılarınınhangi sırada gezileceÄŸini kontrol etmek amacıyla kullanılır. ï‚­ tabindex="0" (sıfır) - "natural" (doÄŸal) sıra ï‚­ EÄŸer X >Y, tabindex="X" sahip bileÅŸen tabindex="Y " sahip bileÅŸenden önce tekrarlanır ï‚­ Negatif tabindex’e sahip bileÅŸenler atlanır, bununla beraber, bu standartta tanımlı deÄŸildir 28 <input type="text" tabindex="10" />