Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/258.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Drupal-创建一个表单_Php_Mysql_Drupal_Drupal 6 - Fatal编程技术网

Php Drupal-创建一个表单

Php Drupal-创建一个表单,php,mysql,drupal,drupal-6,Php,Mysql,Drupal,Drupal 6,如何在drupal中创建一个包含5个文本字段的表单,允许用户输入数据,然后单击submit按钮将所有数据保存到mysql数据库表中?我强烈邀请您阅读,这是drupal管理表单的强大工具。我强烈邀请您阅读,这是Drupal管理表单的强大工具。您也可以尝试使用该模块。它几乎满足您的需要您也可以尝试该模块。它几乎满足您的需要如果您只需要几个字段,您可以使用cck模块创建包含这些字段的内容,为所有用户设置创建内容的权限。 使用视图模块可以创建所有创建的列表 如果您只需要几个字段,您可以使用cck模块创

如何在drupal中创建一个包含5个文本字段的表单,允许用户输入数据,然后单击submit按钮将所有数据保存到mysql数据库表中?

我强烈邀请您阅读,这是drupal管理表单的强大工具。

我强烈邀请您阅读,这是Drupal管理表单的强大工具。

您也可以尝试使用该模块。它几乎满足您的需要

您也可以尝试该模块。它几乎满足您的需要

如果您只需要几个字段,您可以使用cck模块创建包含这些字段的内容,为所有用户设置创建内容的权限。 使用视图模块可以创建所有创建的列表


如果您只需要几个字段,您可以使用cck模块创建包含这些字段的内容,为所有用户设置创建内容的权限。 使用视图模块可以创建所有创建的列表


从对这个问题的其他回答中可以看出,有很多不同的方法可以做到这一点。问题是,一旦数据进入mysql,您想对其做什么

1) 如果您希望将数据以某种方式存储在mysql中,并且数据将由某人查看,但通常不需要向用户显示,那么webform可能是一种方法。它允许您轻松创建一个表单,人们可以在其中输入数据,然后特权用户可以在线或通过下载文件中的响应来查看结果。Webform特别适合设置调查和其他表单,您只希望每个用户填写一次

2) 如果您希望人们回答表单中的问题,然后将结果显示为网站上的数据,尤其是如果您希望在视图中显示结果,则使用cck创建节点类型,并允许人们使用其答案创建节点。确保每个用户创建一个节点一次要稍微复杂一些,但是一旦创建了节点,就可以使用现有工具以多种不同的方式显示它们


3) 如果您需要将表单输出放入您创建的或提供给您的特定表中,那么最好是认真学习并自己构建代码。Webform和CCK为自己创建表格,如果您使用的是现有系统,则无法使用这些表格。

从对这个问题的其他回答中可以看出,有很多不同的方法可以做到这一点。问题是,一旦数据进入mysql,您想对其做什么

1) 如果您希望将数据以某种方式存储在mysql中,并且数据将由某人查看,但通常不需要向用户显示,那么webform可能是一种方法。它允许您轻松创建一个表单,人们可以在其中输入数据,然后特权用户可以在线或通过下载文件中的响应来查看结果。Webform特别适合设置调查和其他表单,您只希望每个用户填写一次

2) 如果您希望人们回答表单中的问题,然后将结果显示为网站上的数据,尤其是如果您希望在视图中显示结果,则使用cck创建节点类型,并允许人们使用其答案创建节点。确保每个用户创建一个节点一次要稍微复杂一些,但是一旦创建了节点,就可以使用现有工具以多种不同的方式显示它们


3) 如果您需要将表单输出放入您创建的或提供给您的特定表中,那么最好是认真学习并自己构建代码。Webform和CCK创建表供自己使用,如果您使用的是现有系统,则无法使用。

您可以使用Drupal Webform模块

如果您想制作自定义表单,可以创建自己的模块。 此链接将帮助您


您可以使用Drupal webform模块

如果您想制作自定义表单,可以创建自己的模块。 此链接将帮助您


尽管很多答案都建议使用webform模块,但编写自己的表单并不难,而且可以节省安装不需要的mkodule的时间。(数据库中更少的代码和更少的表是一件好事。)

要在drupal中创建一个包含大约5个文本字段的表单,允许用户输入数据,然后单击submit按钮,将所有数据保存到mysql数据库表中:

假设
mymodule
是您模块的名称

// shows the form
mymodule_myform($form, &$form_state) {
    for ($i = 0; $i < 5; $i++) {
        $form["field_$i"] = array(
            '#type' => 'textfield',
            '#title' => t('textfield @i', array('@i' => $i))
        );
    }

    $form['submit'] = array('#type' => 'submit', '#value' => t('Submit'));
}

// validate input
mymodule_myform_validate($form, &$form_state) {
}

// save the input to the database
mymodule_myform_submit($form, &$form_state) {
    $values = array();
    for ($i = 0; $i < 5; $i++) {
        $values("field_$i_value" = strip_tags($form_state['values']['field_$i']));
    }
    flat_val = implode(',', $values);
    $sql = "INSERT INTO {table} (field_0_value, field_1_value, field_2_value, field_3_value, field_4_value) VALUES (%s)"
    $res = db_query($sql, $flat_val);
    drupal_set_message("Thank you for your submission.", 'status');
}
//显示表单
mymodule_myform($form,&$form_state){
对于($i=0;$i<5;$i++){
$form[“field_$i”]=数组(
“#键入”=>“文本字段”,
'#title'=>t('textfield@i',数组('@i'=>$i))
);
}
$form['submit']=数组('#type'=>'submit','#value'=>t('submit');
}
//验证输入
mymodule_myform_validate($form,&$form_state){
}
//将输入保存到数据库
mymodule_myform_submit($form,&$form_state){
$values=array();
对于($i=0;$i<5;$i++){
$values(“field_$i_value”=条带标签($form_state['values']['field_$i']);
}
flat_val=内爆(',',$值);
$sql=“插入{table}(字段0值、字段1值、字段2值、字段3值、字段4值)值(%s)”
$res=db\u查询($sql,$flat\u val);
drupal_set_消息(“感谢您的提交。”,“状态”);
}

尽管很多答案都建议使用webform模块,但编写自己的表单并不难,而且可以节省安装不需要的mkodule的时间。(数据库中更少的代码和更少的表是一件好事。)

要在drupal中创建一个包含大约5个文本字段的表单,允许用户输入数据,然后单击submit按钮,将所有数据保存到mysql数据库表中:

假设
mymodule
是您模块的名称