代码之家  ›  专栏  ›  技术社区  ›  charan

检索表单的cck字段

  •  1
  • charan  · 技术社区  · 15 年前

    我想在我的表单alter中检索cck字段“field\u info”,以便在用户提交时插入到另一个表中。这似乎不管用。

    //mymodule_form_alter() implemented
           function mymodule_form_mysubmit{
    
                $test = $form['field_info']['#value'];
            //insert stuff code
        }
    

    代码有错误吗?

    2 回复  |  直到 15 年前
        1
  •  2
  •   user113292 user113292    15 年前

    你说呢 module_form_alter() 已实现,但仅为确认,您需要在其中包含以下内容:

    $form['#submit'][] = 'mymodule_form_mysubmit';
    

    假设您这样做了,要获取字段\ u info的值,您的提交函数应该如下所示:

    function mymodule_form_mysubmit($form, &$form_state) {
      $test = $form_state['values']['field_info'][0]['value'];
    }
    

    $form_state 包含正在提交的表单的当前状态。CCK总是假设一个字段可能有多个值,所以它总是将内容放入一个数组中(因此 ['field_info'][0] ).

        2
  •  0
  •   charan    15 年前

    我找到了解决办法

            $test = $form['field_info'][0]['#value'];