perl | Carga de archivos en CGI

Perl es un lenguaje de programación de propósito general, especialmente diseñado para la manipulación de texto y en la actualidad se utiliza para diversas tareas, incluida la administración del sistema, el desarrollo web, la programación de redes, el desarrollo de GUI y en otras áreas más.

En Perl, CGI (Common Gateway Interface) es un protocolo para ejecutar scripts a través de requests web o, en otras palabras, podemos decir que es un conjunto de reglas y estándares que definen cómo se intercambia información entre el script personalizado y el servidor web.

Diagrama de arquitectura CGI

 

 

Cómo CGI sube el archivo

 
En el extremo del servidor web, el software (en nuestro caso, un script CGI) interpreta los datos del formulario que se envían desde el navegador y extrae el nombre del archivo y el contenido, junto con los demás campos del formulario. Por lo general, el archivo se guarda en un directorio del servidor.

Nota : Los siguientes son los requisitos para crear un script de carga CGI:

  • Acceso a un servidor web compatible con CGI
  • Una copia de Perl debe estar ejecutándose en el servidor web
  • Su servidor web debe contener la biblioteca CGI de Perl, CGI.pm

La carga de un archivo en el servidor web se realiza mediante el uso de un formulario de carga de archivos. Este formulario de carga de archivos se crea en cualquier editor de texto disponible y el formulario debe guardarse con la extensión .htm o .html. La creación de un formulario de carga de archivos implica los siguientes pasos:

Paso 1: Crear un elemento de formulario
En primer lugar, es necesario crear un elemento de ‘formulario’

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

Nota: En el código anterior, multipart/form-data es el tipo de codificación que se utilizará para la carga de archivos y el archivo upload.cgi se utiliza para almacenar los datos publicados mediante este formulario.

Paso 2: Creación de campos de formulario
En segundo lugar, debemos proporcionar campos para el formulario. Estos campos se utilizan para guiar al usuario con los archivos que deben cargarse en el formulario.
Por ejemplo, aquí proporcionaremos un campo Cargar para que el usuario cargue sus fotos y proporcione su correo electrónico.

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

Paso 3: proporcionar el botón Enviar formulario
El tercer paso es permitir que el usuario envíe todos los archivos cargados de acuerdo con los campos proporcionados en el formulario. Para eso, se requiere un botón de envío para que el usuario pueda enviar el formulario al Servidor Web.

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

 
Ejemplo: formulario de muestra para mostrar el funcionamiento de la carga de archivos en 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>                    

Producción :

Publicación traducida automáticamente

Artículo escrito por PREMMAURYA y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *