Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/perl/10.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
Perl CGI通过CGI函数创建HTML表单,而不是调用Perl CGI的HTML表单_Perl_Cgi - Fatal编程技术网

Perl CGI通过CGI函数创建HTML表单,而不是调用Perl CGI的HTML表单

Perl CGI通过CGI函数创建HTML表单,而不是调用Perl CGI的HTML表单,perl,cgi,Perl,Cgi,我想知道如何使用单个Perl文件生成HTML表单并根据参数进行操作,而不是使用单个HTML文件调用单独的Perl脚本的标准方法 可以使用哪些方法来呈现HTML输入表单,并将参数传递给同一个调用脚本,然后对其执行操作?那是坏习惯吗 可以使用哪些方法来呈现HTML输入表单并将参数传递给同一个调用脚本 省略操作属性,或将URL设置为当前URL 然后对他们采取行动 测试以查看数据中是否包含字段和/或请求方法是否为POST(假设POST适用于表单),并使用该测试确定是否应显示表单或下一步 那是坏习惯吗 不

我想知道如何使用单个Perl文件生成HTML表单并根据参数进行操作,而不是使用单个HTML文件调用单独的Perl脚本的标准方法

可以使用哪些方法来呈现HTML输入表单,并将参数传递给同一个调用脚本,然后对其执行操作?那是坏习惯吗

可以使用哪些方法来呈现HTML输入表单并将参数传递给同一个调用脚本

省略
操作
属性,或将URL设置为当前URL

然后对他们采取行动

测试以查看数据中是否包含字段和/或请求方法是否为
POST
(假设
POST
适用于表单),并使用该测试确定是否应显示表单或下一步

那是坏习惯吗


不,这是一种常见的模式。它允许您重用生成表单的代码,以便在出现输入错误时返回一个新表单,该表单预先填充了已提交的数据。

使用类似以下内容的CGI程序是一种非常常见的做法:

if (parameters) {
  Handle the paremeters to produce a page of results
} else {
  Present an input form
}
但是我担心你的标题谈到使用CGI.pm的HTML函数生成HTML。大约15年前,几乎每个人都认为这些函数是个坏主意。您应该使用来生成HTML输出

而且,真的,这些天你不应该写CGI程序。如果你用类似的东西编写软件,你会发现它更灵活