Perl获取web表单键值对的子程序
来源:互联网 发布:构件柱模板的算法 编辑:程序博客网 时间:2024/06/05 13:33
获取信息就是获取一个哈希%FORM。
#
# get info from web#
sub get_web_info
{
my %FROM;
my ($buffer, $pair) = ('','');
my ($name, $value) = ('','');
my @pairs = ();
my %FORM;
if ($ENV{'REQUEST_METHOD'} eq "GET")
{
$data = $ENV{'QUERY_STRING'};
}
elsif ($ENV{'REQUEST_METHOD'} eq "POST")
{
read(STDIN$buffer,$ENV{'CONTENT_LENGTH'});
}
foreach $pair (@pairs)
{
($name, $value) = split (/=/, $pair);
$value = &cov_web_char($value);
$FORM{$name} = $value;
}
return %FORM;
}
#
# Convert web chars to normal
sub cov_web_char($)
{
my $value = shift || '';
$value =~ s/%(..)/pack("c",hex($1))/ge;
$value=~s/ / /g;
$value=~s/%40/@/g;
$value=~s/%0D%0A/<br>/g;
$value=~s/%0d%0a/<br>/g;
$value=~s/%0a/<br>/g;
$value=~s/%3D/=/g;
$value=~s/%21/!/g;
$value=~s/%2B/+/g;
$value=~s/%2C/, /g;
$value=~s/%27/'/g;
$value=~s/%2F/\//g;
$value=~s/%3A/:/g;
$value=~s/%3B/;/g;
$value=~s/%3C/</g;
$value=~s/%28/(/g;
$value=~s/%29/)/g;
$value=~s/%23/#/g;
$value=~s/%3E/>/g;
$value=~s/%3F/?/g;
$value=~s/%5B/[/g;
$value=~s/%5D/]/g;
$value=~s/%5E/^/g;
$value=~s/%91/'/g;
$value=~s/%92/'/g;
$value=~s/%96/-/g;
$value=~s/%7B/{/g;
$value=~s/%7D/}/g;
$value=~s/%7E/~/g;
$value=~s/%26/&/g;
$value=~s/%93/'/g;
$value=~s/%94/'/g;
return $value;
}
my %FORM = &get_web_info;
- Perl获取web表单键值对的子程序
- 兼容 表单 get post方式 获取表单信息 键值对
- perl的子程序
- PERL语言的子程序
- perl 子程序的使用
- perl的子程序
- JS获取表单所有元素(键值对方式)
- C# MVC获取表单(form)键值对
- perl子程序
- web开发中,对url键值对的处理。
- PERL算法-加入子程序的堆排序
- JS自动获取Form表单数据并转换成键值对 ajax提交Form
- java中获取map的键值对方法
- 键值对案例:获取字符串中字符出现的次数
- 获取memcache缓存下所有的键值对信息
- AngularJS Post 表单键值对格式
- HTML表单提交和封装键值对
- C# 将json字符串转换为键值对形式,用于执行form表单形式的请求
- UVA - 11795 Mega Man's Mission
- JSP翻页功能代码
- 高仿QQ电脑管家8 界面
- command使用方法
- press TAB to show Post screen,DEL to enter SETUP
- Perl获取web表单键值对的子程序
- 该天为该年第几天
- Implementing Runtime Object Messaging
- UVA 10201 Adventures in Moving - Part IV 车站加油 dp
- Linux系统操作技巧集萃
- CMD的常用命令
- 用busybox作简单的文件系统(一)
- CODE 53: Remove Duplicates from Sorted Array II
- 2013 EMC新产品网络发布大会[演示文档下载]