Al cargar los archivos o escribir el código, los desarrolladores cometen muchos errores que la mayoría de las veces no podemos resolver. Algunos errores de ortografía, algunas partes olvidadas en el código conducen a la carga fallida del archivo y dan advertencias o errores. Para evitar este tipo de error, debemos aprender acerca de los errores comunes que ocurren para una mejor comprensión.
Los siguientes ejemplos nos ayudan a entender de una mejor manera.
Ejemplo 1: cuando olvidamos escribir enctype=”multipart/form-data” en el campo del formulario, no nos permite cargar un archivo porque esto especifica que el formulario que estamos enviando tiene un tipo de archivo, por lo que permite la Subir Archivo.
No debemos olvidar escribir action=”file_name” en el campo del formulario, ya que es importante especificar el formulario que envía los datos, el archivo que recibe los datos y los ejecuta o recupera los datos en consecuencia.
index.html
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> </head> <body> <form enctype="multipart/form-data" action="file.php" method="POST"> Choose a file to upload: <input name="uploadedfile" type="file" /> <br /> <input type="submit" value="Upload File" /> </form> </body> </html>
file.php
<?php echo 'file count=', count($_FILES),"\n"; print "<pre>"; print_r($_FILES); print "</pre>"; echo "\n"; ?>
Producción:
Ejemplo 2: cuando olvidamos escribir method=»POST» en el campo del formulario, no se puede cargar porque es importante que el método sea POST, ya que el método POST se usa para enviar los datos.
index.html
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> </head> <body> <form enctype="multipart/form-data" action="file.php"> Choose a file to upload: <input name="uploadedfile" type="file" /> <br /> <input type="submit" value="Upload File" /> </form> </body> </html>
file.php
<?php if($_SERVER["REQUEST_METHOD"] == "POST") { echo 'file count=', count($_FILES),"\n"; print "<pre>"; print_r($_FILES); print "</pre>"; echo "\n"; } else { echo "Method is not POST"; } ?>
Producción:
Ejemplo 3: Lo siguiente demuestra la ejecución cuando el tamaño del archivo cargado es mayor que el tamaño del archivo permitido. Utilice el archivo «index.html» utilizado en el Ejemplo 1.
file.php
<?php // Check method is POST if($_SERVER["REQUEST_METHOD"] == "POST") { // Check file size. if ($_FILES["uploadedfile"]["size"] > 10000) { echo "Sorry, your file is too large."; exit; // stop the PHP script } echo 'file count=', count($_FILES),"\n"; print "<pre>"; print_r($_FILES); print "</pre>"; echo "\n"; } else { echo "Method is not POST"; } ?>
Producción:
Ejemplo 4: El siguiente código demuestra la ejecución cuando la extensión no coincide con las extensiones permitidas. Utilice el archivo «index.html» utilizado en el Ejemplo 1.
file.php
<?php if($_SERVER["REQUEST_METHOD"] == "POST") { $target_file = basename($_FILES["uploadedfile"]["name"]); // Extract the file extension $imageFileType = strtolower( pathinfo($target_file, PATHINFO_EXTENSION)); // Make an array of allowed extensions $extensions = array("jpeg","jpg","png","pdf"); // Check that extension is present in the array or not if(in_array($imageFileType, $extensions) === false) { echo "Invalid file extension ..!!"; exit; } echo 'file count=', count($_FILES),"\n"; print "<pre>"; print_r($_FILES); print "</pre>"; echo "\n"; } else { echo "Method is not POST"; } ?>
Producción:
Publicación traducida automáticamente
Artículo escrito por rohanmittal1366 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA