-1
A
回答
0
- 您可以使用电子邮件的网页表单组件,将其设置为
unique
并检查User email as default
,如果你有一个在你的网络表单。 - 自动加载webform提交可能是可能的,通过创建一个具有上下文过滤器的视图块给用户提供了与webform的关系的uid提供&。
正如你可能不希望为您的WebForms额外的网页表单组件(或者不是全部),你总是可以创建一个模块,包括网络表单功能并与hook_form_alter()
作为检索一个WebForm实例提交的数据:
/**
* Implements hook_form_alter().
*/
function YOUR_MODULE_form_alter(&$form, &$form_state, $form_id) {
// get current user
global $user;
// include webform functionality
module_load_include('inc','webform','includes/webform.submissions');
// make sure to only alter webform forms
if (strpos($form_id, 'webform_client_form_') !== FALSE) {
// check if the user is a an authenticated user
if (in_array('authenticated user', $user->roles)) {
// build $filters array for submission retrieval
$filters = array(
'nid' => $form['#node']->webform['nid'],
'uid' => $user->uid,
);
/**
* When not using a unique webform component for 1 submission
* you can use a submission of the user on a webform instance
* to prevent another submission.
*/
// get submissions of the user by webform nid
if ($submissions = webform_get_submissions($filters)) {
// disable the form to limit multiple submissions per instance
$form['#disabled'] = TRUE;
/**
* Webform instance submission data of the current user
* can be found in $submissions[1]->data array
*/
# render your submission with Form api
}
}
}
}
希望这会有所帮助。
0
限制到每网络表单只有1提交可以通过网络表单来完成 - >表格设置 - >总提交极限与如本截图
自动装载用户的提交,每用户提交限制以来以上不会允许您通过使用他们已经提交的网络表单的提交ID来显示网络表单。基于此code
module_load_include('inc','webform','includes/webform.submissions');
$sid = 10;
$submission = webform_get_submissions(array('sid' => $sid));
$nid = $submission[$sid]->nid;
$web_submission = webform_get_submission($nid, $sid);
$node = node_load($nid);
$output = webform_submission_render($node, $web_submission, NULL, 'html');
print $output;
相关问题
- 1. 如何在添加多次提交后取消提交提交?
- 2. 表单自动提交多次
- 3. 如何让Mercurial再次提交提交?
- 4. 如何在向Gerrit提交上次提交后提交额外的提交?
- 5. VBScript运行两次,一次页面加载,一次提交。只需要提交?
- 6. ajax表格在第二次提交时提交两次,第三次提交时提交3次等
- 7. AJAX表单提交 - 每次点击提交表格i ++次数
- 8. 多次提交
- 9. 多次提交
- 10. ajax提交帮助 - IE9不加载目标或提交两次
- 11. 表单提交两次,并在JQuery中加载两次
- 12. 自上次合并后提交显示提交,包括合并提交
- 13. 表单提交两次mvc
- 14. jquery提交表单一次
- 15. Extjs表单多次提交
- 16. 表单提交两次
- 17. jquery:提交表单两次
- 18. jquery表单提交两次
- 19. 表单提交了多次
- 20. JQuery提交表单多次/
- 21. JQuery - 表单提交 - 多次?
- 22. asp.net表单提交两次
- 23. Ajax表单提交两次?
- 24. Ajax提交表单两次
- 25. 多次提交表单
- 26. HTML表单提交两次
- 27. 表单提交两次
- 28. ajax表单提交第二次表单提交如果成功
- 29. 上次提交后提交jsp表单页面(java spring)
- 30. 如何作为单次提交的一部分恢复多次提交