NukeViet có chức năng bật và tắt rewrite, khi bật rewrite thì đường dẫn submit form sẽ đẹp hơn so với khi tắt rewrite. Bài viết này hướng dẫn nhà phát triển lập trình một form dạng get chính xác.
Chức năng này áp dụng cho NukeViet 4.2.01 về sau, các phiên bản trước không có tác dụng.
Trong file php, dùng đoạn tương tự sau để xuất ra action của form và các phần khác khi có bật và không bật rewrite
if (!$global_config['rewrite_enable']) {
$xtpl->assign('FORM_ACTION', NV_BASE_SITEURL . 'index.php');
$xtpl->assign('NV_LANG_VARIABLE', NV_LANG_VARIABLE);
$xtpl->assign('NV_LANG_DATA', NV_LANG_DATA);
$xtpl->assign('NV_NAME_VARIABLE', NV_NAME_VARIABLE);
$xtpl->assign('MODULE_NAME', MODULE_NAME);
$xtpl->parse('main.no_rewrite');
} else {
$xtpl->assign('FORM_ACTION', NV_BASE_SITEURL . 'index.php?' . NV_LANG_VARIABLE . '=' . NV_LANG_DATA . '&' . NV_NAME_VARIABLE . '=' . $module_name);
}
Trong file tpl thêm đoạn
<!-- BEGIN: no_rewrite -->
<input type="hidden" name="{NV_LANG_VARIABLE}" value="{NV_LANG_DATA}">
<input type="hidden" name="{NV_NAME_VARIABLE}" value="{MODULE_NAME}">
<!-- END: no_rewrite -->