2010-03-23 46 views
13

Cách thêm thông báo lỗi vào phần tử Biểu mẫu Zend sau khi biểu mẫu đã được xác thực?Biểu mẫu Zend: thêm thông báo lỗi sau khi xác thực biểu mẫu

Tôi đang cố thêm các lỗi lỗi tôi nhận được từ Zend_Auth (hiện tại tôi đang hiển thị chúng bằng flashMessenger).

tôi đã cố gắng một cái gì đó như thế này:

$form->getElement('username')->addErrorMessage('my message'); 
+0

Bạn có gặp bất kỳ lỗi nào không? – thetaiko

+0

Các lỗi khác được hiển thị như mong đợi. – takeshin

Trả lời

12

Từ các tài liệu dạng zend -

addErrorMessage ($ message): thêm một thông báo lỗi để hiển thị vào mẫu lỗi xác nhận. Bạn có thể gọi số này nhiều lần và các tin nhắn mới là được thêm vào chồng.

addError ($ message): thêm thông báo vào ngăn xếp thông báo lỗi tùy chỉnh và gắn cờ biểu mẫu không hợp lệ.

Nếu biểu mẫu của bạn không được đánh dấu là không hợp lệ, biểu mẫu có thể không hiển thị bất kỳ thông báo lỗi nào. Sử dụng addError($message) thay vì addErrorMessage($message) sẽ đảm bảo rằng phần tử cũng được đánh dấu là không hợp lệ.

+0

Xin lỗi, có lỗi đánh máy trong mã của tôi. $ form-> getElement ('username') -> addErrorMessage ('thư của tôi'); hoạt động như mong đợi. – takeshin

1

Bạn cần sử dụng phương thức setErrors() để tạo ngăn xếp lỗi. Trong trường hợp, khi phần tử đã có một số lỗi, bạn nên sử dụng phương pháp addErrors(). Để kiểm tra xem yếu tố có lỗi hay không, bạn có thể sử dụng phương thức hasErrors()

4
if(!$your_zend_auth_result){ 
    $form->getElement('username')->addError('Your Message'); 
    $form->markAsError(); 
} 
Các vấn đề liên quan