作业帮 > ASP > 教育资讯

PerlScript编写ASP[1]

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/03 12:02:24 ASP
PerlScript编写ASP[1]
PerlScript编写ASP[1]ASP
【BK网络学院 - ASP】
现在我们建立第一个ASP页
<%@Language=PerlScript%>

PerlScript Test
<%
for($i=0; $i<=10; $i+=2) {
$Response->Write("");
$Response->Write("Hello World!
");
}
%>

在这里大家一定要注意
"$Response->Write("");"为什么不用print呢?因为print 是对程序而言,是直接的,而ASP是间接的输出。在ASP里面使用PerlScript是自动应用了ASP相关模块(use ASP;)。这个页内容是进行循环依次输出字的大小。

访问得到服务器的变量,也不是以前那么样子了,命令是
"<%= $Request->ServerVariables('SERVER_SOFTWARE')->Item() %> "

我们一般在Perl里面则是
"$ENV{'SERVER_SOFTWARE'};"
得到POST或者GET数据,比以往在Perl程序中容易很多。
POST:"$Request->Form('name')->Item()"
而GET: "Request->QueryString('name')->Item()"

在输出非"text/html"类型数据的时候,首先要使用模块:"Win32::OLE::Variant;",比如输出"image/GIF"Perl程序方法是:
print "Content-type:image/GIF\n\n";
而在PerlScript中用:
$Response->{ContentType} = "image/GIF";

输出数据方法则是:
$Response->BinaryWrite(Win32::OLE->Variant(VT_UI1, $image));
取得ASP的错误信息:
"$ASPError = $Server->GetLastError();"
设置浏览器Cookies:"
$Response->Cookies->SetProperty(
'类别',
'Cookies',
'这是一个Cookies'
);
"
设置允许URL:"
$Response->Cookies('Cookie')->{Domain} = 'tanshuai';
"
设置过期时间:"
$Response->Cookies('someCookie')->{Expires} = 'January 1, 2001';
"
数据库连接:"
<%
#建立连接ADOBD的对象
#
$Conn = $Server->CreateObject("ADODB.Connection");
#打开系统 DSN
#
$Conn->Open( "Tanshuai" );

# 执行 SQL 查询
#
$RS = $Conn->Execute( "SELECT * FROM Orders" );

#取得目标查询队列数
$count = $RS->Fields->{Count};

# 输出显示每个队列名
#
for ( $i = 0; $i < $count; $i++ ) {
$Response->Write( $RS->Fields($i)->Name );
$Response->Write("
");
};

# 输出所有队列值
#
while ( ! $RS->{EOF} ) {
for ( $i = 0; $i < $count; $i++ ) {
$Response->Write(" ");
$Response->Write($RS->Fields($i)->{Value});
$Response->Write("
");
};

#移动到下一个纪录
#
$RS->MoveNext();
};

# 关闭所有对象
#
$RS->Close();
ASP