Nasıl popüler PHP çerçeveler Form Girdi Hatalar ele?

1 Cevap php

Ben örnek için Zend Framework doğrulayıcılarıyla form elemanları oluşturmak için bazı yeteneğine sahip olduğunu biliyorum. Ama şimdi, kullanıcı geçersiz olduğu, tam çöp veri girer Diyelim ki. Bundan sonra ne olur? JS kısmı yanlış gider veya JS devre dışı bırakılır ve sunucu çöp verileri alır diyelim.

Nasıl "büyük" PHP çerçeveler kavramsal, bu ele? Çerçeve söz ve eğer bilirseniz, bunu açıklayınız. Bu bir çok yardımcı olacaktır.

Nasıl hata iletileri forma iade edilir ve nasıl görüntülenir? Bu teknik olarak nasıl yapılır?

Benim bakış itibaren, teorik olarak bu şekilde gitmek zorunda:

  1. Kullanıcı Çöp girer
  2. Kullanıcı Formunu (JS doğrulama başarısız, JS devre dışı, ne olursa olsun) gönderir
  3. PHP komut dosyası çöp giriş alır
  4. PHP komut sunucu tarafında çöp giriş doğrular. Tüm alanlar = YANLIŞ, ÇÖP.
  5. Bir alan doğrulama başarısız her zaman, PHP komut dosyası bir diziye bir girdi hata mesajı yazıyor.
  6. Hata Mesajı dizi anahtar form elemanı adı olan bir harita (ilişkisel dizi)
  7. Senaryo nedeniyle giriş hataları tekrar formu yükler
  8. Form komut dosyası hata iletisi diziden alan giriş hataları görüntülemek için tüm mantığı vardır
  9. Kullanıcı güzel hata mesajları görür ve çöp yeniden girer.
  10. Tekrar ve tekrar.
  11. Her şey yolunda> komut verileri kaydeder ve büyük TEŞEKKÜRLER mesaj görüntüler kadar.

Ben başka hiçbir biliyorum, ama varsa, ben bilmem gerek ;-)

Bir şey bu en iyi çözüm olmadığını söylüyor.

1 Cevap

Eğer kullandığınız sürece Peki ilk Dojo Zend Framework javascript ile ilgisi yoktur formları sağladı. JS doğrulama ya da kendiniz tarafından yazılmış, ya da Dojo etkin forma bağlı olacaktır.

Doğrulama her ZFE yineleme ve Validator bulunuyor kontrol oluşur. Bir hata oluşursa, bir hata mesajı olarak ZFE saklanır. Tekrar formunu görüntülemek zaman varsayılan dekoratörler kullanıyorsanız, o zaman hata mesajı var olan eleman "süsleyen", hangi Zend_Form_Decorator_Errors yüklenmiş olacaktır.

Ben isValid () metodu ile başlayan Zend_Form kaynak kodlarını okumak öneririz. O okumak ve neler olup bittiğini görmek için çok basit.