PerlScript編寫ASP

來源:互聯網
上載者:User
現在我們建立第一個ASP頁
<%@Language=PerlScript%>
<HTML>
<TITLE> PerlScript Test </TITLE>
<%
for($i=0; $i<=10; $i+=2) {
$Response->Write("");
$Response->Write("Hello World!
");
}
%>
</HTML>
在這裡大家一定要注意
"$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.net';
"
設定到期時間:"
$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();
$Conn->Close();
%>

在PerlScript中sub、if、else、else if、for each、while、聲明變數、開啟檔案、字元處理都、調用模組檔案都是按照以前的樣子。只是在對於Web伺服器間的特殊處理,需要使用特殊方法。

另外#在指令碼編寫的時候仍然是作為註解符號,而且一定要記得每個指令碼命令結束後必須要填寫";"結束符號。

通過本文您已經掌握了如何用Perl的Perl指令碼(PerlScript)編寫ASP了。Perl的強大功用和廣泛的相容性,是沒有任何一個技術可比的。目前Perl可嵌入技術包含:C嵌入Perl、Java 嵌入Perl、ASP嵌入Perl、Apache嵌入 Perl、WSH嵌入Perl、WSC 嵌入Perl……

Perl其實是一個簡單易學的通用資訊技術語言,我覺得現在普及電腦,首先應該普及的就是Perl語言了,PERL比BASIC自然得多。好像人們在說話,它的編寫方式就好像我們處理事務一樣。學會了Perl,不但對你學習其它語言(諸如:C/C++、JAVA)有很大的促進、協助並加快學習進度,Perl的強大發展趨勢,可以讓您"投機取巧",在其它流行的編程技術中嵌入,這樣在您不懂得或是覺得一種演算法很麻煩的時候,用Perl來協助你快捷的完成。讓您在其它語言中從Perl慢慢進化成該種語言,是相當順利的平穩過渡。我發現在學習Perl以後,學習其它語言速度有很大的加快。


聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.