MemoCode - PHP
MemoCode

Como cargar imagen a servidor web con html y php


1. Crea el archivo PHP con el nombre de tu preferencia.


2. Despues de crear el archivo, procederemos a editarlo, para ello lo primero que haremos es crear la estructura de html5 y crear un formulario donde enviaremos la informacion al correo destino.


                    
<!DOCTYPE html>
<html lang="es">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Enviar imagen</title>
</head>

<body>
<!-- Formulario para subir una imagen -->
    <form action="" method="post" enctype="multipart/form-data">
        <label for="file">Selecciona una imagen:</label>
        
        <!-- Botón para enviar el formulario y subir la imagen -->
        <input type="submit" value="Subir Imagen" name="submit">
    </form>
</body>
</html>
                        
                  

3. Ahora agregaremos codigo php fuera de la estructura html, este lo puedes poner abajo de toda la estructura de html o arriba.

                    
<?php
// Verifica si el formulario fue enviado mediante el método POST
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
    
    // Directorio donde se guardará la imagen subida
    $direccion = "imagenes/";
    
    // Ruta completa del archivo que se subirá
    $ruta = $direccion . basename($_FILES["file"]["name"]);
    
    // Extensión del archivo en minúsculas
    $extencion = strtolower(pathinfo($ruta, PATHINFO_EXTENSION));

    // Validar el tipo de archivo (solo jpg, jpeg, png)
    $extension_valida = ['jpg', 'jpeg', 'png'];
    if (!in_array($extencion, $extension_valida)) {
        echo "Solo se permiten archivos JPG, JPEG y PNG.";
    }
    
    // Validar el tamaño del archivo (máximo 5MB)
    elseif ($_FILES["file"]["size"] > 5 * 1024 * 1024) {
        echo "El archivo es demasiado grande. El límite es de 5MB.";
    }
    
    // Si pasa las validaciones, intenta subir el archivo
    else {
        if (move_uploaded_file($_FILES["file"]["tmp_name"], $ruta)) {
            echo "El archivo " . basename($_FILES["file"]["name"]) . " ha sido subido correctamente.";
        } else {
            echo "Hubo un error al subir el archivo.";
        }
    }
}
?>
                    
                  

4. En tu servidor web donde crear el archivo php ahora creas una carpeta llamada "imagenes" donde se almacenaran las imagenes que envies desde tu pagina web.


5. (Opcional) si estas trabajando en un servidor local linux, te recomendamos darle permisos a la carpeta y tambien configurar SELinux para que permita enviar imagenes externas a esa carpeta.



6. Ingresa el siguiente comando para ubicarte en la direccion de tu proyecto web.


                    
[root@admin ~] # cd /var/www/html/
                    
                  


7. Una vez ubicado en html o carpeta donde esta tu proyecto ingresa los siguientes comando para darle permisos a la carpeta "imagenes".



                    
[root@admin ~] # chmod 755 imagenes/
[root@admin ~] # chown apache:apache imagenes/
                    
                  


8. Por ultimo agrega el comando par dar permiso a ingresar imagenes externas a la carpeta con SELinux.



                    
[root@admin ~] # chcon -R -t httpd_sys_rw_content_t imagenes/
                    
                  

Descargar proyecto Tutorial youtube