我必须在drupal网站上建立一个庞大的表格,这是给旅行社的,这是一份满意度问卷。 在表格开始时,用户选择自己的旅行类型,此后所有字段均取决于第一个答案,对于每种旅行类型,都有不同的字段需要填写。
所以我的问题是做这种表格的最佳方法是什么(旅行有12种类型,所以有12种不同的字段集(〜50个字段/类型))。
我认为webform可以与webform条件字段一起使用,但是我认为webform存在的问题是当我要导出数据时,在CSV中,我将拥有所有旅行类型的所有字段,这将是非法的。 我进行搜索,但是找不到是否可以通过编程方式隐藏csv的字段。
我在互联网上找到的第二种方法是CCK,但我对此没有经验。
您有什么建议吗?
答案 0 :(得分:0)
您可以使用webform模块提供的挂钩:
/**
* Alter a Webform submission's data when exported.
*/
function hook_webform_csv_data_alter(&$data, $component, $submission) {
// If a value of a field was left blank, use the value from another
// field.
if ($component['cid'] == 1 && empty($data)) {
$data = $submission->data[2]['value'][0];
}
}
在webform.api.php
中找到到Webform模块文件夹中
您还可以通过自己的更改表单过程来修改提交功能:
function hook_form_alter(&$form, &$form_state , $form_id){
if ($form_id == 'myformid'){
$form['#submit']= array('mycustomsubmit'); // or loop on existing to suppress only unwanted submit callbacks
}
}
function mycustomsubmit($form , &$form_state){
// do your stuffs csv exports
}