WCAG 3.3.7 · A Seviyesi · EN 301 549 9.3.3.7

Gereksiz Tekrar Girişi

Süreçte daha önce girilen bilginin yeniden yazdırılmak yerine otomatik doldurulmasını ya da seçilebilmesini ister; sınırlı istisnalarla.

Kısaca

Aynı ödeme sürecinde aynı adresi iki kez yazmak, bazıları için küçük bir rahatsızlık, bazıları için gerçek bir engeldir. Bellek ya da bilişsel engeli olanlar girdiklerini hatırlayamayabilir. Yavaş yazanlar, anahtar ya da ses girdisi kullananlar her tekrar girişte ek çaba harcar.

WCAG 2.2 ile gelen bu kriter, kullanıcı tarafından daha önce girilen ya da kullanıcıya sağlanan ve aynı süreçte yeniden gereken bilginin otomatik doldurulmasını ya da kullanıcının seçebilmesini ister; yeniden girişin zorunlu olduğu, güvenlik için gerektiği ya da önceki bilginin artık geçerli olmadığı durumlar hariç.

Neleri kapsar?

  • Aynı süreç: Her eylemin bir etkinliği tamamlamak için gerekli olduğu bir dizi kullanıcı eylemi; çok adımlı bir ödeme ya da kayıt gibi. Bir süreç alan adlarını aşabilir; örneğin üçüncü taraf bir ödeme sağlayıcısı kullanan bir ödeme.
  • Otomatik doldurulmuş: Bilgi sonraki adımda kullanıcı için doldurulur.
  • Seçilebilir: Kullanıcı onu seçebilir; örneğin bir listeden, sayfadan metin kopyalayarak ya da bir "aynısı" onay kutusunu işaretleyerek.
  • İstisnalar: Yeniden giriş zorunludur (bir bellek oyunu gibi). Yeniden giriş güvenlik için gereklidir; gösterilmeyen yeni bir parolayı doğrulamak gibi. Bilgi artık geçerli değildir.
  • Tarayıcı otomatik doldurması yeterli değil: Web sitesinin kendisi veriyi sağlamalı ya da yeniden istemekten kaçınmalıdır. Otomatik doldurma yardımcı olabilir, ama tek başına kriteri karşılamaz.
  • Oturumlar arası değil: Kriter, bilgiyi oturumlar arasında saklamayı gerektirmez.
  • Kapsam dışı: Girdi amacını belirlemek 1.3.5'tir. Erişilebilir kimlik doğrulama 3.3.8'dir.

Kimleri etkiler?

Daha az stres yaşayan ve daha az hata yapan bilişsel engelli ve kısa süreli bellek güçlüğü olan kişiler. Anı oluşturmakta ya da hatırlamakta zorlanan kişiler. Anahtar kontrolü ya da ses girdisi kullananlar dahil, daha az metin girişine ihtiyaç duyan hareket engelli kişiler.

EAA ve EN 301 549'da

Avrupa Erişilebilirlik Yasası (Direktif (AB) 2019/882) 28 Haziran 2025'ten sonra piyasaya sunulan kapsamdaki ürün ve hizmetler için geçerlidir. Yasanın 47. gerekçesi web siteleri ve mobil uygulamalar için dört ilkeyi sayar: algılanabilirlik, işletilebilirlik, anlaşılabilirlik ve sağlamlık. Daha az yeniden giriş, "anlaşılabilirlik" ilkesinin parçasıdır.

Teknik karşılığı EN 301 549 standardında bulunur. Standart, WCAG 3.3.7'i atıfla alır ve ortama göre ayrı maddelere dönüştürür.

WCAG 3.3.7'in EN 301 549'daki karşılıkları
MaddeOrtamNe ister?
9.3.3.7Web sayfalarıWeb içeriğinin WCAG 3.3.7 kriterini karşılamasını ister.

Kriter WCAG 2.2 ile yeni olduğu için EN 301 549 V3.2.1'de yer almaz. Dokümanlar ve yazılım için geçerli satırları V4.1.1'in 10. ve 11. maddelerinde kontrol edin. Madde numaraları EN 301 549'un "9. + WCAG numarası" düzenine göredir. V3.2.1'de yazılım maddesi, açık ve kapalı işlevsellik için ayrı alt maddelere bölünmüştür. Kaynak gösterirken tam numaraları standarttan kontrol edin.

Standart sürümü: 3.3.7 kriteri WCAG 2.2'ye yenidir; bu yüzden WCAG 2.1'i esas alan EN 301 549 V3.2.1'in parçası değildir. EAA için hazırlanan ilk sürüm olan EN 301 549 V4.1.1'de (Eylül 2026) yer alır. V4.1.1 henüz AB Resmî Gazetesi'nde atıf almamıştır; bu nedenle EAA gereksinimlerini karşılamanın gönüllü teknik yolu olarak görülmelidir. Atıf yapıldığında uygunluk karinesi sağlayacaktır.

EAA bağlamında dikkat: Yasanın Madde 2/4 hükmü bazı içerikleri gereksinimlerin dışında bırakır; örneğin 28 Haziran 2025'ten önce yayımlanmış ofis dosya biçimleri ve bu tarihten sonra güncellenmeyen arşivler. Bu tarihten sonra yayımladığınız ya da değiştirdiğiniz içerik bu istisnaların kapsamında değildir.

Directive (EU) 2019/882, EUR-Lex, İngilizce, yeni sekmede açılır

Web için kod örnekleri

1. "Aynısı" onay kutusu (G221)

Kullanıcıların fatura adresini teslimat için tek eylemle yeniden kullanmasına izin verin.

Hatalı
<h2>Teslimat adresi</h2>
<input name="street"> <input name="city"> <!-- yeniden soruyor -->
Doğru
<label><input type="checkbox" id="same"> Teslimat adresi fatura adresiyle aynı</label>
<script>
same.addEventListener("change", () => { if (same.checked) copyBillingToDelivery(); });
</script>

2. Sonraki adımları önceden doldurun

Önceki adımdaki veriyi sonraki forma taşıyın.

Hatalı
<!-- 2. adım, 1. adımda girilen şirket adını soruyor -->
<input name="company">
Doğru
<input name="company" value="{{ saved.company }}">

3. Önceki bilgiyi seçmek için gösterin

Kullanıcının daha önce girilen bilgiyi yazmak yerine seçmesine izin verin.

Hatalı
<input name="shipTo" placeholder="Adresi yeniden yazın">
Doğru
<label for="addr">Teslimat adresi</label>
<select id="addr">
  <option>Örnek Sokak 12, İstanbul (fatura)</option>
  <option>Yeni adres girin</option>
</select>

4. Form durumunu adımlar arasında koruyun

Kullanıcılar adımlar arasında geçtiğinde girdileri kaybetmeyin.

Hatalı
nextBtn.addEventListener("click", () => location.href = "/adim2"); // 1. adım verisi kayboldu
Doğru
nextBtn.addEventListener("click", () => {
  sessionStorage.setItem("checkout", JSON.stringify(readForm()));
  location.href = "/adim2";
});

5. İki kez girilen e-posta

Aynı e-posta adresini yeniden istemek, bir istisna geçerli olmadıkça gereksiz tekrar girişidir. Bir kez sorun ve düzeltme için gösterin.

Hatalı
<label>E-posta <input name="email"></label>
<label>E-postayı doğrulayın <input name="email2"></label>
Doğru
<label>E-posta <input name="email" type="email"></label>
<!-- Bir kez sorun. Daha sonra düzeltmenin bir yolunu sunun -->

6. Güvenlik istisnası

Gösterilmeyen yeni oluşturulmuş bir parolayı doğrulamaya izin verilir. "Parolayı göster" seçeneği doğrulamayı gereksiz kılabilir.

Hatalı
<input type="password" name="pw"> <!-- ve kontrol etmenin yolu yok -->
Doğru
<label>Yeni parola <input type="password" name="pw" id="pw"></label>
<label>Parolayı doğrulayın <input type="password" name="pw2"></label>
<!-- Gizli yeni bir parola için yeniden giriş serbesttir -->

Mobil için kod örnekleri

Uygulamada, veriyi aynı akışın ekranları arasında taşıyın ve kullanıcıların yeniden yazmak yerine seçmesine izin verin.

iOS (SwiftUI)

import SwiftUI

struct CheckoutView: View {
    @State private var billing = "Örnek Sokak 12, İstanbul"
    @State private var sameAsBilling = true
    @State private var delivery = ""

    var body: some View {
        Form {
            TextField("Fatura adresi", text: $billing)
            // Kullanıcı yeniden yazmak yerine "fatura ile aynı" seçeneğini seçer
            Toggle("Teslimat adresi fatura adresiyle aynı", isOn: $sameAsBilling)
            if !sameAsBilling {
                TextField("Teslimat adresi", text: $delivery)
            }
        }
    }
}

Android (Jetpack Compose)

import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.Row
import androidx.compose.material3.*
import androidx.compose.runtime.*

@Composable
fun Checkout() {
    var billing by remember { mutableStateOf("Örnek Sokak 12, İstanbul") }
    var same by remember { mutableStateOf(true) }
    var delivery by remember { mutableStateOf("") }

    Column {
        OutlinedTextField(billing, { billing = it }, label = { Text("Fatura adresi") })
        // Kullanıcı yeniden yazmak yerine "fatura ile aynı" seçeneğini seçer
        Row {
            Checkbox(checked = same, onCheckedChange = { same = it })
            Text("Teslimat adresi fatura adresiyle aynı")
        }
        if (!same) {
            OutlinedTextField(delivery, { delivery = it }, label = { Text("Teslimat adresi") })
        }
    }
}

Nasıl test edilir?

  • Her süreci baştan sona izleyin: Ödeme, kayıt ve başvuru gibi çok adımlı akışları tamamlayın. Birden fazla kez istenen her bilgiyi not edin.
  • Her tekrarı kontrol edin: Otomatik dolduruluyor mu ya da kullanıcı seçebiliyor mu?
  • "Aynısı" seçeneklerini kontrol edin: Kullanıcı daha önceki bir adresi ya da adı tek eylemle yeniden kullanabiliyor mu?
  • İstisnaları uygulayın: Yeniden giriş zorunlu mu, güvenlik için mi gerekli ya da önceki bilgi artık geçerli değil mi?
  • Geri ve ileri gidin: Önceki bir adıma dönüp yeniden ilerleyin. Veri korunuyor mu?
  • Üçüncü taraf adımlarını kontrol edin: Gömülü bir ödeme sağlayıcısı, zaten topladığınız veriyi yeniden soruyor mu?
  • Denetleyiciyi başlangıç olarak kullanın: Otomatik araçlar adımlar arasındaki tekrarlanan istekleri algılayamaz. Süreci bir kişi baştan sona izlemelidir.

Sık yapılan hatalar

  • Adresi iki kez sormak: "Aynısı" seçeneği olmadan fatura ve teslimat.
  • İki kez girilen e-posta: Hiçbir istisna geçerli olmadan bir e-posta doğrulama alanı.
  • Adımlar arasında kaybolan veri: Geri gitmek formu temizler.
  • Tarayıcı otomatik doldurmasına güvenmek: Sayfa veriyi kendisi sağlamalıdır.
  • Kullanıcının daha önce verdiği bilgiyi yeniden sormak: Aynı süreçte; örneğin bir şirket adı.
  • Yeniden soran üçüncü taraf adımı: Adresi tekrarlayan bir ödeme sağlayıcısı.
  • Saklama ile karıştırmak: Kriter, veriyi oturumlar arasında hatırlamayı gerektirmez.
  • Her tekrarı güvenlik saymak: Yalnızca gerçek güvenlik ihtiyaçları kapsama girer.

Kaynaklar

Standart sürümü: EN 301 549 V4.1.1 (2026-09), WCAG 2.2. Bu sayfa bilgilendirme amaçlıdır ve hukuki tavsiye niteliği taşımaz; bağlayıcı metin için Avrupa Erişilebilirlik Yasası'nın (Direktif (AB) 2019/882) ve EN 301 549 standardının resmî metinlerini esas alın.

Corpowid, Gartner tarafından tanınan bir platformdur.

Corpowid, dijital erişilebilirlik alanındaki yenilikçi yaklaşımı ve performansı nedeniyle dünyanın önde gelen araştırma ve danışmanlık şirketlerinden biri olan Gartner tarafından takdir edilmiştir. Bu rozetler, yapay zeka destekli ve kapsayıcı web deneyimleri oluşturma konusundaki kararlılığımızı yansıtmaktadır.

Corpowid hakkında sorularınız mı var?

Bizimle iletişime geçin.

Size en kısa sürede geri dönüş sağlayacağız.