Form verilerini doğrulama: hatalı yanıtları engelleyen alan kuralları ve desenler
Eksik basamaklı bir telefon numarası. 1200 yaşında bir katılımcı. İçinde harfler bulunan bir kimlik numarası. Bunların her birini girildiği anda reddetmek bir saniye sürer; ancak veriler toplandıktan, grafiklere döküldükten ve birine gönderildikten sonra bir elektronik tabloda bunları bulmak saatler alır. Doğrulama, hatalı yanıtları daha kapıdayken geri çevirme alışkanlığıdır.
Bu makale, bir formun bunun için size sunduğu iki aracı, yani her alan için kurallar ve desenleri, bunların ne kadar etkili olduğunu ve engelleyemedikleri yanıtlarla ne yapmanız gerektiğini açıklar.
Her alan türü için kurallar
En basit kontroller, bir alanın ne tür bir yanıt içerdiğine bağlıdır:
| Alan | Ayarlayabileceğiniz kural | Örnek |
|---|---|---|
| Kısa veya paragraf metni | Minimum ve maksimum karakter sayısı | En az 2 karakter, tek bir harfin isim olarak girilmesini engeller |
| Sayı | En düşük ve en yüksek değer | 0 ile 120 arası bir yaş, hem negatif yaşları hem de 1200 gibi yazım hatalarını reddeder |
| Tarih | Sabit veya bugüne bağlı en erken ve en geç tarih | Gelecek bir tarihin seçilemediği bir kayıt tarihi |
| Dosya eki | İzin verilen dosya türleri, maksimum boyut ve birden fazla dosyaya izin verilip verilmediği | Yalnızca görseller, belirli bir boyuta kadar, yanıt başına bir dosya |
Toplayacağınız veya ortalamasını alacağınız her şey için Sayı türünü kullanın. Bir metin alanına yazılan sayılar düzgün şekilde toplanamaz veya sıralanamaz, bu nedenle en temel doğrulama, doğru alan türünü seçmektir.
Desenler: yanıtın tam şeklini tanımlama
Bazı yanıtlar, hiçbir aralığın ifade edemeyeceği sabit bir şekle sahiptir: cep telefonu numarası, kimlik numarası, referans kodu gibi. Bunlar için, yanıtın tam olarak nasıl görünmesi gerektiğini tanımlayan ve düzenli ifade veya regex olarak da bilinen bir desen belirlersiniz.
Örneğin, ^07[0-9]{8}$ şu anlama gelir: başlangıç, ardından 07, ardından tam olarak sekiz rakam ve ardından bitiş. Bu, 07 ile başlayan on haneli bir cep telefonu numarasıdır ve başka hiçbir şeyi kabul etmez.
Bilmeniz gereken birkaç önemli nokta:
- Desen, yanıtın tamamıyla eşleşmelidir.
[0-9]+yalnızca rakamları kabul eder ve0591234567abcifadesini reddeder. Sabit bir uzunluk için şunu belirtin:^05[0-9]{8}$. Tek başına bir[0-9]tam olarak bir rakam anlamına gelir. - Desenler Arapça metinlerde çalışır. Hazır Yalnızca Arapça harfler biçimi, Arapça harfleri ve boşlukları kabul eder; böylece Arapça yazılmış iki veya daha fazla kelimeden oluşan bir isim geçerken, rakamlar ve Latin harfleri reddedilir. (Kendi başınıza
^\p{Arabic}+$yazmak göründüğünden daha esnektir: Arap alfabesindeki her şeyi, Arap-Hint rakamlarını, harekeleri ve Farsça harfleri kabul eder, ancak boşlukları reddeder.) - Yanıt uygun olmadığında insanların göreceği mesajı sade bir dille yazabilirsiniz, böylece neyi düzeltmeleri gerektiğini anlarlar.
- Hatalı bir desen kaydettiğinizde reddedilir, örneğin kapatılmamış bir parantez içeren desenler. Bu sayede desendeki bir hata, kimsenin alana veri girmesini engelleyemez.
Yazmak zorunda değilsiniz
Form oluşturan çoğu kişi düzenli ifade yazamaz ve yazmak zorunda da değildir. Pulseform'un Desen yardımcısı desen kutusunun yanında yer alır. Cep telefonu numarası gibi hazır bir biçim seçer, neyle başladığını ve kaç haneli olduğunu ayarlayıp Bunu kullan düğmesine basarsınız. Desen ve hata mesajı sizin için doldurulur; Bir değer deneyin özelliği ise yazdığınız değerlerin hangi biçimleri kabul ettiğini gösterir.
Yine de, yayınlamadan önce deseninizi birkaç gerçek örnekle, hatta zorlayıcı olanlarla test edin. Çok katı bir desen geçerli yanıtları engellerken, çok gevşek bir desen hatalı verilerin geçmesine izin verir.
Desen nerede kontrol edilir, nerede edilmez?
Çoğu rehberin atladığı kısım burasıdır. Bir kural, ancak uygulandığı yerler kadar iyidir.
| Yanıtın geldiği yer | Desen kontrol edilir mi? |
|---|---|
| Genel bağlantı ve uygulama içi doldurma sayfası | Evet. Uymayan yanıt reddedilir |
| CSV dosyasından kayıt içe aktarma | Evet. Satır atlanır ve raporlanır |
| Saha görevlileri tarafından kullanılan Collect uygulaması | Hayır |
Neden sahada değil? Bağlantısı olmayan bir telefon bir deseni güvenilir bir şekilde değerlendiremez. Eğer uygulama, sunucunun daha sonra reddedeceği bir yanıtı kabul etseydi, görüşme bittikten sonra saha görevlisinin yanıtı kaybolurdu. Bu nedenle saha görevlileri desenlerinize tabi tutulmaz. Yanıtları her zaman saklanır. Zorunlu sorular ve sayı aralıkları gibi diğer kurallar cihazda kontrol edilmeye devam eder.
Desenleri olan bir form veya anket için bir saha görevlisi kodu oluşturduğunuzda, bunların sahada kontrol edilmeyeceğini onaylamanız istenir. Bu onay her seferinde sorulur ve formda desenler ile çalışan bir kod olduğu sürece, başlık kısmında bir hatırlatıcı bulunur.
Uymayan yanıtlarla ne yapmalı?
Bir saha görevlisinden gelen ve desenle eşleşmeyen bir yanıt diğerleri gibi saklanır ve sayılır, ancak bulabilmeniz için işaretlenir:
- Kayıt detaylarında, alan Beklenen biçimle eşleşmiyor uyarısını gösterir.
- Kayıt listesinde, Biçim Kontrolü filtresini Yalnızca eşleşmeyen kayıtlar olarak ayarlayarak sadece bu kayıtları görebilirsiniz.
- CSV dışa aktarma dosyasında, ilgili alanları belirten Biçim Kontrolü adında son bir sütun bulunur.
Daha sonra bir deseni eklerseniz, değiştirirseniz veya kaldırırsanız, bu formun saha tarafından toplanan tüm kayıtları için işaretler güncellenir.
İşaretlenmiş kayıtları, eksik basamaklı bir sayı gibi yazım hataları açısından inceleyin ve saha görevlisiyle iletişime geçin. Bu yanıtlar asla reddedilmez veya gizlenmez.
Ne zaman desen kullanmalı, ne zaman kullanmamalı?
- Sabit şekilli yanıtlar için kullanın: telefon numaraları, kimlik numaraları, referans kodları, posta kodları.
- Yorum veya isim gibi serbest metinler için kullanmayın: katı bir şekil sadece gerçek insanları reddetmenize neden olur.
- Bir kural işi görüyorsa desene tercih edin: sayı aralığı, rakamlar için bir desenden daha anlaşılırdır.
- Hata mesajını nazik tutun. "07 ile başlayan on haneli bir numara girin" ifadesi "Geçersiz" demekten daha iyidir.
Herhangi bir form aracından ne istemeli?
Hangi aracı kullanırsanız kullanın, şunları sorun:
- Sadece "zorunlu" değil, her alan türü için kurallar sunuyor mu?
- Sabit bir şekli desenle tanımlayabiliyor muyum ve desen yanıtın tamamıyla eşleşmek zorunda mı?
- Düzenli ifade yazamayanlar için yardım var mı?
- Arapça metinlerde çalışıyor mu?
- Kural her kanalda uygulanıyor mu: genel bağlantı, içe aktarılan dosya ve saha ekibi?
- Kontrol edemediği bir yanıta ne oluyor? Güvenli tasarım, yanıtı saklar ve inceleme için işaretler.
Pulseform'da
Alan kuralları ve desenler, formun her alanındaki Daha Fazla Ayar kısmından ayarlanır. Aynı özel desen, anketlerdeki metin soruları için de geçerlidir. Rehberdeki form oluşturma ve alan kuralları, desene uymayan yanıtlar, sahada özel desenler ve saha görevlisi kodları oluşturma bölümlerine göz atın.
Kendi verilerinizle deneyin
Bir anket veya form oluşturun ve yanıtlar geldikçe sonuçları görün.
14 günlük ücretsiz denemeyi başlatın