Perl 教程 之 Perl CGI编程 11

简介: Perl CGI教程介绍了如何通过CGI程序接收HTML表单(Textarea)中的多行数据。test.html是一个包含Textarea的表单,提交后调用test.cgi脚本。test.cgi读取POST请求的数据,解析name/value对,获取textarea内容并显示在HTML响应中。在浏览器中,用户输入的内容会以标题形式展示。

Perl 教程 之 Perl CGI编程 11

Perl CGI编程

什么是CGI

CGI 目前由NCSA维护,NCSA定义CGI如下:

CGI(Common Gateway Interface),通用网关接口,它是一段程序,运行在服务器上如:HTTP服务器,提供同客户端HTML页面的接口。

通过CGI程序传递 Textarea 数据

Textarea 向服务器传递多行数据,test.html 代码如下:

test.html 代码
<!DOCTYPE html>


<br>在这里输入内容...<br>





test.cgi 脚本代码如下:

test.cgi 代码

!/usr/bin/perl

local ($buffer, @pairs, $pair, $name, $value, %FORM);

读取信息

$ENV{'REQUEST_METHOD'} =~ tr/a-z/A-Z/;
if ($ENV{'REQUEST_METHOD'} eq "POST")
{
read(STDIN, $buffer, $ENV{'CONTENT_LENGTH'});
}else {
$buffer = $ENV{'QUERY_STRING'};
}

读取 name/value 对信息

@pairs = split(/&/, $buffer);
foreach $pair (@pairs)
{
($name, $value) = split(/=/, $pair);
$value =~ tr/+/ /;
$value =~ s/%(..)/pack("C", hex($1))/eg;
$FORM{$name} = $value;
}
$text_content = $FORM{textcontent};

print "Content-type:text/html\r\n\r\n";
print "

";
print "";
print '';
print '';
print "";
print "";
print "

输入的文本内容为:$text_content

";
print "";
print "";

1;
浏览器中,执行效果

目录
相关文章
|
Kubernetes 开发者 Docker
探索微服务架构下的容器化部署策略
在当今快速发展的软件工程领域,微服务架构已成为构建可扩展、灵活且高效系统的首选方法。与此同时,容器技术,尤其是Docker和Kubernetes,为微服务的部署提供了前所未有的便利和效率。本文将深入探讨微服务架构下的容器化部署策略,包括容器化的基本概念、微服务的特点、以及如何利用Docker和Kubernetes等工具实现高效、可靠的服务部署。通过具体案例分析,本文旨在为开发者提供一套完整的微服务容器化部署解决方案,帮助他们在复杂多变的软件开发环境中保持竞争力。
546 1
|
传感器 API 网络架构
EdgeX Foundry试运行
EdgeX Foundry试运行
207 4
|
存储 数据挖掘 索引
服务器数据恢复—服务器存储中文件夹丢失的数据恢复案例
服务器存储数据恢复环境: DroboPro FS网络存储,共8块SAS硬盘,组建了一组raid5磁盘阵列。 服务器存储故障: 存储中有一个共享文件夹丢失,该文件夹存放了重要数据。
服务器数据恢复—服务器存储中文件夹丢失的数据恢复案例
【LeetCode 03】双指针法总结
【LeetCode 03】双指针法总结
129 0
|
Ubuntu 网络协议 Apache
【cpolar】Ubuntu本地快速搭建web小游戏网站,公网用户远程访问
【cpolar】Ubuntu本地快速搭建web小游戏网站,公网用户远程访问
357 0
|
算法 C语言 C++
从C语言到C++_25(树的十道OJ题)力扣:606+102+107+236+426+105+106+144+94+145(上)
从C语言到C++_25(树的十道OJ题)力扣:606+102+107+236+426+105+106+144+94+145
139 1
|
C语言 数据安全/隐私保护
C语言初阶①(分支语句和循环语句)知识点(下)
C语言初阶①(分支语句和循环语句)知识点
170 1
|
机器学习/深度学习 运维 网络协议
函数计算产品使用问题之创建一个http服务,可以通过公网来访问,是否只能选择web函数
函数计算产品作为一种事件驱动的全托管计算服务,让用户能够专注于业务逻辑的编写,而无需关心底层服务器的管理与运维。你可以有效地利用函数计算产品来支撑各类应用场景,从简单的数据处理到复杂的业务逻辑,实现快速、高效、低成本的云上部署与运维。以下是一些关于使用函数计算产品的合集和要点,帮助你更好地理解和应用这一服务。
173 0
|
机器学习/深度学习 数据采集 算法
AB Test如何应用于风控场景?
AB Test是一个很好的导航系统和说理工具,策略分析师在各个场景使用这种分析方法,可以形成一个完整的闭环;本文作者分享了关于AB Test如何应用于风控场景,我们一起来看一下。
1225 0
|
设计模式 存储 算法
构造者设计模式
构造者设计模式
125 0