Tôi đang cố chỉnh sửa biểu mẫu thanh toán trong Drupal Commerce, để yêu cầu người dùng nhập địa chỉ email của họ hai lần. Khi họ gửi biểu mẫu của họ, Drupal nên kiểm tra xem liệu các email đó có khớp không và gọi số form_set_error()
nếu không. Hiện tại, tôi chỉ đang cố gắng đính kèm một chức năng xác nhận tùy chỉnh vào biểu mẫu mà tôi không thể làm việc được. (Module của tôi được gọi là checkout_confirm_email. Module này chỉ dành riêng cho việc sử dụng của chúng tôi, vì vậy tôi không đặt nhiều nỗ lực vào tên).Cách sử dụng xác thực biểu mẫu trong Drupal 7
function checkout_confirm_email_form_alter(&$form, &$form_state, $form_id) {
if($form_id == 'commerce_checkout_form_checkout') {
$form['#validate'][] = 'checkout_confirm_email_form_validate';
dprint_r($form['#validate']);
dsm("I printed");
}
}
function checkout_confirm_email_form_validate($form, &$form_state) {
dsm("Never prints...");
}
dprint_r
đầu ra statment Array ([0] => checkout_confirm_email_form_validate)
. Vì vậy hàm này là một phần của mảng biểu mẫu, nhưng câu lệnh dsm trong hàm xác nhận không bao giờ in.
Tôi đã thực sự bị kẹt trong một thời gian. Tôi đã tra cứu các ví dụ, và tôi không thể nhìn thấy những gì tôi đang làm sai. Bất kỳ ai?
này nên được '$ form [ '# nộp '] [' # validate '] [] '? – user151841
Không # là cho thuộc tính không cho các yếu tố –