Permitir solo imágenes en input file de HTML

En este post te mostraré el atributo a establecer para aceptar solo imágenes en un campo de formulario de HTML 5 de tipo file, es decir, de un input type file. Por ejemplo, aceptar todo tipo de imágenes, solo imágenes PNG, etcétera.

Recuerda que esto solo es para validar del lado del cliente y que es una ayuda al usuario, pues no implica seguridad que se debe aplicar del lado del servidor.

Aceptar determinado tipo de archivo en formulario

Para ello simplemente define tu input con el atributo accept en el tipo de archivo de las imágenes. Si quieres permitir todas las imágenes, quedaría así:

<input accept="image/*" type="file" multiple>

Fíjate en que tiene image/* indicando que acepta todo tipo de imágenes. Por cierto, el atributo multiple no tiene que ver en el contexto de este post, pero te lo explico, es para que acepte varios archivos en lugar de uno.

Si por ejemplo solo quieres que acepte imágenes PNG y JPG podría ser:

<input accept="image/png,image/jpeg" type="file">

Ahora lo separamos por comas, y así puedes especificar todo el tipo de archivos que quieres permitir para el input.

Te lo repito, esto solo es una ayuda visual para el usuario, ya que en realidad se puede saltar fácilmente; por lo que siempre debes validar del lado del servidor o en el lugar en donde vayas a almacenar los archivos.

Estoy aquí para ayudarte 🤝💻


Estoy aquí para ayudarte en todo lo que necesites. Si requieres alguna modificación en lo presentado en este post, deseas asistencia con tu tarea, proyecto o precisas desarrollar un software a medida, no dudes en contactarme. Estoy comprometido a brindarte el apoyo necesario para que logres tus objetivos. Mi correo es parzibyte(arroba)gmail.com, estoy como@parzibyte en Telegram o en mi página de contacto

No te pierdas ninguno de mis posts 🚀🔔

Suscríbete a mi canal de Telegram para recibir una notificación cuando escriba un nuevo tutorial de programación.

Dejar un comentario

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