Тёмный

Cómo SUBIR VARIOS ARCHIVOS con Javascript ARRASTRÁNDOLOS al navegador | Drag and Drop 

German Rodriguez
Подписаться 7 тыс.
Просмотров 5 тыс.
50% 1

Cómo hacer un upload de archivos mixto, mediante un input de tipo file múltiple y arrastrando los archivos a un DIV, mediante el evento ondrop y la API fetch.
Archivo con el ejemplo: bit.ly/3vKh3Ls
Si tenés dudas (no solo de este video), podés evacuarlas en los comentarios o participar en las tutorías de programación en vivo, en bit.ly/Padawan...
Buscame sino en tu red social preferida: bit.ly/Pada1sT...

Опубликовано:

 

29 сен 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 22   
@lucas_936
@lucas_936 3 месяца назад
Lo que unico que no me salio fue curiosamente el console.log del json pero luego lo pude hacer todo lo demas, me tiraba un error de que el json tenia un error de sintaxis Adaptar lo que mostraste a mi pequeño proyecto que estoy haciendo con codeigneitor 4 Muy buen video
@zion2st2.05
@zion2st2.05 11 месяцев назад
Que capo me resolviste un brete que me estaba haciendo renegar mal . Gracias.
@PadawansTrainer
@PadawansTrainer 11 месяцев назад
Gracias a vos por el comentario y apoyo. Saludos!
@romualdoduque7387
@romualdoduque7387 Год назад
Hola, en la petición Fetch me sale este error por consola, "Request failed SyntaxError: Unexpected non-whitespace character after JSON at position", no me deja avanzar
@Coznix_
@Coznix_ Год назад
Buenas, como podria hacer para recargar la pagina en la que se sube la imagen luego de que esta se suba? gracias
@joseantonioleon5775
@joseantonioleon5775 2 года назад
Buenas tardes, excelente video, ¿Cómo lo subiríamos a MySQL? Gracias
@PadawansTrainer
@PadawansTrainer 2 года назад
Hola, José Eso lo tendrías que agregar en el archivo upload.php que es el que recibe los archivos. Pero depende de cómo quieras guardar el archivo en la base de datos. Si querés tener el archivo en una columna del MySQL o si querés tener el archivo en una carpeta y guardar en el MySQL solo el nombre. Como sea, ambas soluciones sucederían adentro del foreach( ) que hace la subida de archivos. Si querés guardar solo la ruta al archivo en la base de datos, vos ya tenés la variable $nombre_real que tiene el nombre que estás usando para guardar las fotos. Ese valor lo usarías en la cadena de texto para hacer el INSERT a la base de datos: //esto iría en la línea 7 de upload.php: $consulta = "INSERT INTO la_tabla_que_sea SET ARCHIVO='$nombre_real', UNA COLUMNA='un valor', OTRA_COLUMNA='otro valor'"; //Y acá ejecutas tu consulta, sea por mysqli_query( ) o por PDO, según la librería que manejes. Si lo que querés guardar es el contenido del archivo en la base de datos, no haría falta que crearas la variable $nombre_real, ni hacer su move_uploaded_file. Directamente crearías las consulta SQL para hacer el INSERT, y en la columna del archivo (que debe ser del tipo de dato MEDIUMBLOB o LONGBLOB, según el tamaño de archivo máximo que aceptás) usar la función de MySQL LOAD_FILE( ) que está pensada para leer el contenido de un archivo, pasándole como ruta el tmp_name de la foto (pero OJO que la ruta debe ser con la barra "/" y no con la barra invertida "\"). //esto iría en la línea 7 de upload.php: $ruta_al_archivo = str_replace( "/", "\\", $tmp_name ); $consulta = "INSERT INTO la_tabla_que_sea SET ARCHIVO=LOAD_FILE('$ruta_al_archivo'), UNA COLUMNA='un valor', OTRA_COLUMNA='otro valor'"; //Y acá ejecutas tu consulta, sea por mysqli_query( ) o por PDO, según la librería que manejes. Pero en este caso ya deberías modificar la forma de recuperar el listado de archivos, porque el glob( ) no te va a servir (ya que las fotos no están físicamente en una carpeta del server, sino que tendrás que hacer la consulta SELECT FROM que traiga todos los archivos guardados). Saludos!
@joseantonioleon5775
@joseantonioleon5775 2 года назад
Muchas gracias
@ramherfer
@ramherfer Год назад
Bueno pues me parece un video de 10, un componente de 10 y una explicación de 10. Ahora Lo mismo pero almacenar intermedio (pudiendo eliminar antes de subir) y subirlos bajo demanda ya seria..... "un lujo"
@JuanFcoHGon2014
@JuanFcoHGon2014 Год назад
Hola me gustaría que cuando suba un fichero pueda abrirlo haciendo doble click bien sea una imagen, mp3 o lo que sea ¿Como podría hacerlo? Tambien quiero que al arrastrar dichos fichers multiples se cambie su icono según sea una imagen o un mp3
@carlosalva-mi7mo
@carlosalva-mi7mo Год назад
Excelente amigo, si quisiera incluir la imagen con más datos, por ejemplo: Descripción, Fecha, etc. , ¿como podría enviar esas otras variables al upload.php ? Gracias.
@smoothoperator1936
@smoothoperator1936 Год назад
Hola muy buen video...me ayudaste mucho. Me gustaría que en el formulario solo pueda enviarse un solo archivo, ya sea .txt .jpg cualquier extensión pero que esté permitido solo dropear 1. Se puede hacer eso? Osea limitar la cantidad de archivos que puede recibir el formulario.
@PadawansTrainer
@PadawansTrainer Год назад
Hola, gracias por tus palabas. A ver son dos cambios los que tenés que hacer para que manden un solo archivo (tanto por el buscar como el droppear archivos). 1) Al input de tipo file, en el index.php, tenés que sacarle el atributo multiple. Eso va a hacer que solo pueda seleccionar UN solo archivo por ese medio. 2) En el caso del drag and drop, no podés limitar la cantidad de archivos que el usuario elije, pero sí la cantidad que vos agarrás del drop. Por ejemplo, obtener solo el primero de todos los files. Para esto, el segundo cambio sería en el script.js cambiar la línea que hace este for: for( let file of listado_archivos ){ FD.append( 'files[]', file); } Por appendear solo el primer elemento de listado_archivos (el indice 0), como te dejo a continuación: FD.append( 'files[]', listado_archivos[0]); Con eso solo vas a agregar un archivo al FormData. Sobre el tipo de archivo, no hay ninguna validación integrada para evitar que te manden txt o doc, o lo que sea. Vas a tener que modificar la etiqueta que creás al mostrar los uploads, porque yo muestro pero no podés pasarle como src="datos.txt" porque no va a saber qué hacer. Tal vez cambiarlo solo por una lista de nombres de archivos, sin el IMG. Espero te haya servido mi respuesta. Saludos!
@joaquinbenedictoariasmarti1677
@joaquinbenedictoariasmarti1677 11 месяцев назад
Todo muy bien explicado. Eres un grande Germán!
@PadawansTrainer
@PadawansTrainer 11 месяцев назад
Gracias Joaquín, abrazo!
@homercerda6729
@homercerda6729 Год назад
Muy buen video, Gracias por tu aporte.
@PadawansTrainer
@PadawansTrainer Год назад
Gracias a vos por el comentario y el apoyo, Homer!! Abrazo
@djvarela
@djvarela 2 года назад
Crack!
@Baradone_
@Baradone_ Год назад
Más gente como tú dios mío
@PadawansTrainer
@PadawansTrainer Год назад
Gracias por tus palabras baradone! Algún día seremos una legión de programadores explicando lo que aprendimos a hacer, que hayan encontrado su lugar en RU-vid (por ahora la plataforma nos esconde bajo la alfombra jajajaja). Saludos!
@xkiller838
@xkiller838 2 года назад
excelente video gracias
@PadawansTrainer
@PadawansTrainer 2 года назад
¡A vos, por pasar y comentar!
Далее
DAXSHAT!!! Avaz Oxun sahnada yeg'lab yubordi
10:46
Просмотров 269 тыс.
Шоколадная девочка
00:23
Просмотров 90 тыс.
We finally APPROVED @ZachChoi
00:31
Просмотров 9 млн
Send Email from HTML Form for Free | EmailJS
7:28
Просмотров 38 тыс.
SUBIR ARCHIVOS CON DRAG AND DROP JAVASCRIPT
38:48
Просмотров 37 тыс.
Drag & Drop using HTML CSS & JavaScript
8:49
Просмотров 33 тыс.
The cloud is over-engineered and overpriced (no music)
14:39
Build a FULL Web App With Claude With 2 SCREENSHOTS!
17:36