找到 449 篇文章,主题为编程脚本

在 Perl 中使用 GET 方法

Mohd Mohtashim
更新于 2019年12月2日 08:09:56

553 次浏览

这是一个简单的 URL,它使用 GET 方法将两个值传递给 hello_get.cgi 程序。https://tutorialspoint.com/cgi-bin/hello_get.cgi?first_name=ZARA&last_name=ALI以下是 hello_get.cgi 脚本,用于处理 Web 浏览器提供的输入。#!/usr/bin/perl local ($buffer, @pairs, $pair, $name, $value, %FORM); # 读取文本 $ENV{'REQUEST_METHOD'} =~ tr/a-z/A-Z/; if ($ENV{'REQUEST_METHOD'} eq "GET") {    $buffer = $ENV{'QUERY_STRING'}; } # 将信息拆分为名称/值对 @pairs = split(/&/, $buffer); foreach $pair (@pairs) {    ($name, $value) = split(/=/, $pair);    $value =~ tr/+/ /;    $value =~ s/%(..)/pack("C", hex($1))/eg;    $FORM{$name} = $value; } $first_name = $FORM{first_name}; $last_name = $FORM{last_name}; print "Content-type:text/html\r\r"; print ""; print ""; print "Hello - Second CGI ... 阅读更多

使用 Perl 显示“文件下载”对话框

Mohd Mohtashim
更新于 2019年12月2日 08:05:20

236 次浏览

有时,您可能希望提供一个选项,用户单击链接后会弹出一个“文件下载”对话框,而不是显示实际内容。这非常简单,可以通过使用 Perl 脚本的 HTTP 标头来实现。此 HTTP 标头将与上一节中提到的标头不同。例如,如果您想使 FileName 文件可从给定链接下载,则其语法如下:#!/usr/bin/perl # HTTP 标头 print "Content-Type:application/octet-stream; name = \"FileName\"\r"; print "Content-Disposition: attachment; filename = \"FileName\"\r"; # 实际 ... 阅读更多

Perl CGI 环境变量

Mohd Mohtashim
更新于 2019年12月2日 08:04:03

2K+ 次浏览

所有 Perl CGI 程序都可以访问以下环境变量。这些变量在编写任何 Perl CGI 程序时都起着重要作用。序号变量名称和说明1CONTENT_TYPE内容的数据类型。当客户端向服务器发送附加内容时使用。例如文件上传等。2CONTENT_LENGTH查询信息的长度。仅对 POST 请求可用3HTTP_COOKIE以键值对的形式返回设置的 Cookie。4HTTP_USER_AGENTUser-Agent 请求标头字段包含有关发出请求的用户代理的信息。它是 Web 浏览器的名称。5PATH_INFOCGI 脚本的路径。6QUERY_STRING发送的 URL 编码信息 ... 阅读更多

使用 Perl 编写的第一个 CGI 程序

Mohd Mohtashim
更新于 2019年12月2日 08:01:54

327 次浏览

这是一个简单的 Perl CGI 程序,位于名为 hello.cgi 的文件中。此文件已保存在 /cgi-bin/ 目录中,其内容如下。在运行 CGI 程序之前,请确保使用 chmod 755 hello.cgi UNIX 命令更改文件的模式。#!/usr/bin/perl print "Content-type:text/html\r\r"; print ''; print ''; print 'Hello Word - First CGI Program'; print ''; print ''; print 'Hello Word! This is my first CGI program'; print ''; print ''; 1;现在,如果您单击 hello.cgi 链接,则请求将发送到 Web 服务器,Web 服务器将在 /cgi-bin 目录中搜索 hello.cgi,执行它,并将生成的任何结果发送 ... 阅读更多

Perl 中有用的 DBI 函数

Mohd Mohtashim
更新于 2019年12月2日 08:00:02

96 次浏览

检查可用驱动程序@ary = DBI->available_drivers; @ary = DBI->available_drivers($quiet);返回通过搜索 @INC 中的目录中的 DBD::* 模块找到的所有可用驱动程序的列表。默认情况下,如果某些驱动程序被同一名称的其它驱动程序隐藏在较早的目录中,则会发出警告。传递 $quiet 的真值将抑制警告。检查已安装驱动程序%drivers = DBI->installed_drivers();返回当前进程中“已安装”(已加载)的所有驱动程序的驱动程序名称和驱动程序句柄对列表。驱动程序名称不包括“DBD::”前缀。检查数据源@ary = DBI->data_sources($driver);返回通过指定的驱动程序可用的数据源(数据库)列表。如果 $driver 是 ... 阅读更多

在 Perl 数据库操作中使用 NULL 值

Mohd Mohtashim
更新于 2019年12月2日 07:57:00

803 次浏览

未定义值或 undef 用于指示 Perl 数据库操作中的 NULL 值。您可以像使用非 NULL 值一样插入和更新具有 NULL 值的列。以下示例使用 NULL 值插入和更新 age 列:$sth = $dbh->prepare(qq {    INSERT INTO TEST_TABLE (FIRST_NAME, AGE) VALUES (?, ?) }); $sth->execute("Joe", undef);这里 qq{} 用于返回一个带引号的字符串到 prepare API。但是,在尝试在 WHERE 子句中使用 NULL 值时必须小心。考虑:SELECT FIRST_NAME FROM TEST_TABLE WHERE age = ?将 undef (NULL) 绑定到占位符将 ... 阅读更多

Perl 中的 COMMIT 和 Rollback 操作

Mohd Mohtashim
更新于 2019年12月2日 07:56:02

775 次浏览

COMMIT 操作COMMIT 是向数据库发出最终确认更改的信号的操作,此操作后无法撤销任何更改。这是一个调用 commit API 的简单示例。$dbh->commit or die $dbh->errstr;ROLLBACK 操作如果您对所有更改不满意,或者在任何操作过程中遇到错误,您可以使用 rollback API 撤销这些更改。这是一个调用 rollback API 的简单示例。$dbh->rollback or die $dbh->errstr;开始事务许多数据库都支持事务。这意味着您可以进行大量修改数据库的查询,但没有 ... 阅读更多

Perl 中的数据库 DELETE 操作

Mohd Mohtashim
更新于 2019年12月2日 07:54:26

674 次浏览

当您想要从数据库中删除一些记录时,需要 Perl DELETE 操作。以下是删除 TEST_TABLE 中所有 AGE 等于 30 的记录的过程。此操作将执行以下步骤。根据所需条件准备 SQL 查询。这将使用 prepare() API 完成。执行 SQL 查询以从数据库中删除所需记录。这将使用 execute() API 完成。释放语句句柄。这将使用 finish() API 完成。如果一切顺利,则提交此操作,否则您可以回滚整个事务。$age = 30; my $sth = $dbh->prepare("DELETE FROM TEST_TABLE WHERE AGE = ?"); $sth->execute( $age ) or ... 阅读更多

Perl 中的数据库 UPDATE 操作

Mohd Mohtashim
更新于 2019年12月2日 07:52:37

979 次浏览

在任何数据库上执行 Perl UPDATE 操作意味着更新数据库表中已有的一个或多个记录。以下是更新所有 SEX 为“M”的记录的过程。我们将所有男性的 AGE 增加一年。这将分三个步骤进行:根据所需条件准备 SQL 查询。这将使用 prepare() API 完成。执行 SQL 查询以从数据库中选择所有结果。这将使用 execute() API 完成。释放语句句柄。这将使用 finish() API 完成。如果一切顺利,则提交此操作,否则您可以回滚整个事务。请参见下一个 ... 阅读更多

Perl 中的数据库 READ 操作

Mohd Mohtashim
更新于 2019年12月2日 07:51:02

603 次浏览

Perl 对任何数据库的读取操作意味着从数据库中获取一些有用的信息,即一个或多个表中的一条或多条记录。因此,一旦建立了数据库连接,我们就可以对该数据库进行查询。以下是查询所有年龄大于 20 的记录的过程——这将分四个步骤进行:根据所需条件准备 SQL SELECT 查询。这将使用 prepare() API 完成。执行 SQL 查询以从数据库中选择所有结果。这将使用 execute() API 完成。逐条获取所有结果……阅读更多

广告