繁体   English   中英

Drupal表格没有提交

[英]Drupal Form not Submitting

您好Stackoverflow社区,

我正在使用FormAPI创建一个包含许多类别的投票系统。

我使用drupal_get_form()构建了表单,并将html标记存储到CCK字段中的textarea中。 我还构建了处理数据库的submit函数。

但是,当我显示节点时,可以构造表单,但不会调用提交函数。 我无法弄清楚问题的根源。 任何建议表示赞赏,谢谢!

*编辑:

定义表单:

function judges_nodeapi(&$node, $op, $teaser, $page) { 
switch ($op) {
    case 'view':

        ...

        $node->field_judging_form[0]['value']=drupal_get_form('judges_entry',($node));

        node_save($node);
}
}



  function judges_entry($form_state, $node){
    ...
    return $form;
}

然后我只是使用CCK将表单显示为纯文本。

每次调用drupal_get_form()都会生成一个新令牌(出于安全原因),因此您无法将表单静态呈现到字段中并期望它能够正常工作。

您需要做的是通过实现hook_preprocess_node然后在模板文件中输出表单,每次显示表单时获取表单的新版本。 你的模块文件中有这样的东西:

function MYMODULE_preprocess_node(&$vars) {
  $vars['my_form'] = drupal_get_form('judges_entry',($vars['node']));
}

然后在你的模板文件(node.tpl.php)中:

echo $my_form;

希望有所帮助

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM