¿Escribir un código para subir un archivo en PHP?

En este artículo, entenderemos cómo cargar un archivo usando PHP. Entendamos algunas configuraciones básicas.

En su archivo “ php.ini ”, busque file_uploads y configúrelo en “On”.

file_uploads = On

Acercarse:

  • Primero, creamos un archivo HTML en el que hacemos un formulario para que podamos cargar el archivo usando el método POST .
  • La variable $target_dir en “fileupload.php” toma un nombre de directorio a través de un método de publicación.
  • $target_file toma la ubicación del directorio donde se cargará el archivo.
  • $imageFileType se usa para tomar la extensión del archivo, de modo que nos aseguremos de que el archivo tenga una extensión válida.
  • $extensions se utilizan para almacenar las extensiones válidas para que pueda cambiarlas de acuerdo con los requisitos del programa y agregarlas o eliminarlas de la array de extensiones.
  • En el paso final, ingrese el nombre del directorio en el que desea cargar el archivo y luego elija el archivo del dispositivo local y envíelo. Verá que el archivo se carga como se menciona en la imagen a continuación.

index.html

<!DOCTYPE html>
<html>
  
<body>
  
    <form action="fileupload.php" method="post" 
          enctype="multipart/form-data">
        Directory<input type="text" name="dirname" 
                        id="dirname"><br>
        Select image to upload:
        <input type="file" name="fileToUpload" 
               id="fileToUpload"><br>
        <input type="submit" value="Upload Image" 
               name="submit">
    </form>
  
</body>
  
</html>

fileupload.php

<!DOCTYPE html>
<?php
  
    $target_dir = $_POST["dirname"]."/";
    $target_file = $target_dir . basename($_FILES["fileToUpload"]["name"]);
    $uploadOk = 1;
    $imageFileType = strtolower(pathinfo($target_file, PATHINFO_EXTENSION));
    $extensions = array("jpeg","jpg","png","pdf","gif");
  
   if(isset($_POST["submit"])) {
  
        // To check whether directory exist or not
        if(!empty($_POST["dirname"])){
            if(!is_dir($_POST["dirname"])) {
                mkdir($_POST["dirname"]);    
                $uploadOk = 1;            
            }
        }
        else {
            echo "Specify the directory name...";
            $uploadOk = 0;
            exit;
        }
  
        // To check extensions are correct or not
        if(in_array($imageFileType, $extensions) === true) {     
            $uploadOk = 1;
        } 
        else {
  
            echo "No file selected or Invalid file extension...";
            $uploadOk = 0;
            exit;        
        }
    }
        // Check if file already exists
        if (file_exists($target_file)) {
  
            echo "Sorry, file already exists.";
            $uploadOk = 0;
            exit;
        }
  
        // Check file size
        if ($_FILES["fileToUpload"]["size"] > 10000000) {
  
            echo "Sorry, your file is too large.";
            $uploadOk = 0;
            exit;
        }
  
        // Check if $uploadOk is set to 0 by an error
        if ($uploadOk == 0) 
        {
           echo "Sorry, your file was not uploaded.";
        } 
         else 
        {
  
            // If everything is ok, try to upload file
            if (move_uploaded_file($_FILES["fileToUpload"]
                  ["tmp_name"], $target_file)) 
            {      
                echo "The file ".  $_FILES["fileToUpload"]
                  ["name"]. " has been uploaded.";
            } 
            else 
            {        
                echo "Sorry, there was an error uploading your file.";
            }
        }    
?>
  
</body>
</html>

Producción:

escriba el nombre del directorio y seleccione el archivo

después de cargar el archivo 

Publicación traducida automáticamente

Artículo escrito por rohanmittal1366 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 *