Büyük bir bina biçimi, tavsiyeye ihtiyaç

5 Cevap php

Kullanıcıların Çalıştığım üniversitede lisansüstü eğitim için başvuruda için doldurmak için büyük bir form oluşturmak zorunda. Orada bir toplamak için bilgi miktarı (çoklu adresleri, kişisel bilgiler, iş bilgileri, vb geçmiş okul bilgi, deneyim, ..) olacak ve ben tüm bu işlemek için en iyi yolu bilmek isteyecektir. PHP ve JavaScript kullanarak için gidiyorum.

Ben formun bina / doğrulama, ben sadece benim mevcut projeye pop bir şey ile yardımcı olmak için kullanabileceğiniz herhangi yardımcıları ya da çerçevelerin parçaları var mı?

Ayrıca bildiğim kadarıyla büyük bir form takip ve elde edilen verileri tutmak gibi herhangi bir tavsiye istiyorum.

5 Cevap

Birden sayfalarını kullanmak gerekir, ve kullanıcıların bırakabilirsiniz sayede bir mekanizma içerir ve geri gelip (onlar yanlışlıkla kesildi eğer ya) sonra formun geri kalanını doldurmanız gerekmektedir. Aksi takdirde hizmet nedeniyle kullanıcı sorunları değil, her türlü için gidiyoruz, ama onlar lapa lapa bilgisayar ve internet bağlantılarını, vb kullanıyorsanız çünkü

Anket yazılım muhtemelen ne yaptığınızı makul bir yaklaşım olduğunu ve çoğu PHP CMS yıllardan için anket paketleri vardır. Sıfırdan bu bina veya altında varolan bir CMS var mı?

Formun tüm özelliklerini bilmeden birkaç ipucu:

Bu birden fazla sayfa ile gerçekleştirilebilir, ya da seçici kullanıcı olarak formda öğeleri gizleme / içinden ilerleyerek göstererek olabilir - bir seferde kullanıcı her şeyi göstermek etmeyin. Kullanıcı onlar şeklinde ve ne kadar çaba bitirmek için gerekli olduğu duygusu alabilirsiniz "Sen 10 adım 3 konum" diyor içeriksel navigasyon sağlamak.

Kaydetmek ve geri dönmek için bir mekanizma sağlayarak, daha sonra harika bir fikir. Mümkünse, kendi seçtikleri bir e-posta hesabı için bir bağlantı sağlayabilir - mümkün olduğunca kullanımı kolay olarak bu bileşeni yapmak istiyorum, ve veri almak için ek bir kullanıcı adı / parola doldurmak için onları gerektiren tamamlanması için sadece başka bir engeldir.

Sadece kesinlikle ihtiyacınız isteyin. Evet, burada bazı siyasi savaşlara zorunda gidiyoruz - herkes onlar alabilirsiniz kadar istiyor. (Özellikle etkin birden çok gruba baskısı varsa) bu mücadele tek yolu, bazı prototiplerini inşa etmektir: HER ŞEY ile 1 ve azaltılmış veya kaldırılmış çeşitli bölümler ile bir. Her gruptan paydaşlar ikisi doldurmak ve tamamlanması için zaman ölçmek ya da verim verim rulo var. Eğer tamamlama veri var ve onlar her diğer grup (kendi grubuna ek olarak) onlar ile çalışmak daha kolay soruyor ne kadar anladıkları zaman. In short, remove as much as possible - let the user go back later to provide more details if they wish.

Dizin kartları tüm girişleri yazmak ve mantıksal olarak birbirine uygun görmek. Daha sık değil daha verimli gruplar veya orderings bulacaksınız. Daha muhtemel çok daha kullanışlı fikirler gelecektir. Çevrimiçi formları kağıt formları dönüştürme Bu extremely önemlidir. Usability.gov has a fantastic case study bu konuda.

A List Apart bir makale on building sensible forms bu iyi bir okuma var

Neden formu ilk örneği büyük olması gerekiyor? Eğer hesap için çıplak temel aşağı trim ve onları detayları kalanını dışarı eti daha sonra geri gelmek için bir yol sağlamak değil mi?

Form doğrulama için, jQuery doğrulama eklentisi üzerinde bir kaz pop, Validation

Peki ben Adam ile katılıyorum ama ben sizin için bazı tavsiye var.

If I were you, I would create some virtual hidden tabs instaed of multiple forms with a next button. You can create some which can control by javascript. First show the first one which will collect personal information like Name,Birthday,email, and etc... . Once user filled them out and clicked on next button,hid this and show the other which will ask for other information like address and so on.

Son div de compeleted bütün dalış, seferde sunucuya tüm bilgileri submite bir Gönder düğmesini koymak bir kez.

Tarafından neden bu kadar do?

  1. Kullanıcı şok becuase her zaman uzun bir formu görmezsiniz almazsınız ve hasta ile dolduracaktır.

  2. Sen bir seferde sunucu vurmak; genellikle universtites ve üniversite sunucuları meşgul, daha iyi en azından sunucu vurmak bir form tasarlayabilirsiniz. Bu performans ipucu olarak sayabiliriz.

  3. Bir kerede tüm veri sunacaktır yana, kullanıcı diğer sayfaları veya doldurmak için devam edeceğini konuda endişe olmaz, bu yüzden hala bir performans ipucu olarak sayılır az oturumu kullanır.

  4. Bu şekilde form daha ilginç hale getirir ve size Ajax gibi bir şey yaptım denilen olabilir.

Sen yapmak için Javascript form doğrulama ekleyebilirsiniz daha kullanıcı dostu, ama sen asla eksik gereken tek şey, tarihsel PHP korkunç olmuştur sunucu tarafı doğrulama ... olduğunu.

Yerine bir sürü çek kopyalayıp yapıştırmak zorunda programlı giriş doğrulama inşa edebilirsiniz beri burada hayat bir milyon kez daha kolay yapacağız tek şey, özellikle filter_input_array(), filter library renktedir . Bu alışmak biraz alır, ama o çok şeyler yapmanın eski yolu çok daha iyi.