Trình xử lý gửi biểu mẫu chỉ có thể in một tin nhắn bằng cách sử dụng drupal_set_message()
hoặc viết một tin nhắn trong nhật ký với watchdog()
.
Phương án thay thế là lưu dữ liệu cần thiết trong phiên và chuyển hướng người dùng (sử dụng $form_state['redirect'] = 'page path';
) đến trang hiển thị nội dung của phiên.
function firstmodule_menu() {
$items['the path for your page'] = array(
'page callback' => 'firstmodule_show_submitted_data';
// ...
);
return $items;
}
function firstmodule_form1_submit($form, &$form_state) {
$_SESSION['firstmodule_username'] = $username;
// ...
$form_state['redirect'] = 'the path for your page';
}
function firstmodule_show_submitted_data() {
// Populate $result with the string to show.
return $result;
}
Như lưu ý phụ, đối số đầu tiên t()
phải là một chuỗi bằng chữ, không phải là một chuỗi có được nối hai chuỗi, như trong trường hợp của bạn. Bạn nên sử dụng trình giữ chỗ, như trong đoạn mã sau.
drupal_set_message(t("The user is %username", array('%username' => $username)));
Trong Drupal 7, thay vì trả về một chuỗi, bạn có thể trả về một mảng kết xuất .