Perl CGI中的文件上传

Perl CGI中的文件上传

Perl是一种通用的编程语言,专门为文本操作而设计,目前被用于各种任务,包括系统管理、网络开发、网络编程、GUI开发和其他更多领域。

在Perl中, CGI (Common Gateway Interface)是一种通过网络请求执行脚本的协议,换句话说,我们可以说它是一套规则和标准,定义了自定义脚本和网络服务器之间的信息交换方式。

CGI架构图

Perl  CGI中的文件上传

CGI如何上传文件

在Web服务器端,软件(在我们的例子中,是一个CGI脚本)解释从浏览器发送的表单数据,并提取文件名和内容,以及其他表单字段。通常,该文件会被保存到服务器上的一个目录。

注意 :以下是建立一个CGI上传脚本的必要条件。

  • 访问一个与CGI兼容的Web服务器
  • 网络服务器上必须有一份Perl的拷贝在运行
  • 你的网络服务器必须包含Perl的CGI库,CGI.pm

在网络服务器上上传文件是通过使用一个文件上传表格来完成的。这种文件上传表格是在任何可用的文本编辑器上创建的,该表格必须以.htm或.html为扩展名保存。创建一个文件上传表格包括以下步骤。

第1步:创建表单元素

首先,需要创建一个 “表单 “元素

<form action="/cgi-bin/upload.cgi" method="post" enctype="multipart/form-data">

注意: 在上述代码中,multipart/form-data是用于文件上传的编码类型,而file upload.cgi 则用于存储使用此表单发布的数据。

第2步:创建表单字段

其次,我们需要为表单提供字段。这些字段用于指导用户在表单中需要上传的文件。

例如,在这里,我们将为用户提供一个上传字段,用于上传他们的照片和提供他们的电子邮件。

<p>Upload Photo: <input type="file" name="photo" /></p>
<p>Email: <input type="text" name="email_address" /></p>

第3步:提供提交表单按钮

第3步是让用户根据表单中给出的字段提交所有上传的文件。为此,需要一个提交按钮,以便用户可以将表单发送到网络服务器。

<!--using button for sending the form to web server-->
<p><input type="submit" name="Submit" value="Submit Form" /></p>

例子:显示CGI中文件上传工作的样本表格

<!DOCTYPE html> 
<html lang="en"> 
<head>
    <meta http-equiv = "Content-Type" content = "text/html; charset=utf-8" /> 
    <title>File Upload</title>
</head> 
<body style = "text-align:center;"> 
    <h1 style = "color:green;"> GeeksForGeeks </h1> 
    <form action = "/cgi-bin/upload.cgi"
          method = "post" enctype = "multipart/form-data">
    <p>Upload Photo: <input type = "file" name = "photo" /></p>
    <p>Email: <input type = "text"
                     placeholder = "e.g. GFG@gmail.com"
                     name = "email_address" /></p>
    <p><input type = "submit" name = "Submit" value = "Submit Form" /></p>
    </form> 
</body>
</html>                    

输出 :

Perl  CGI中的文件上传

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程