Foros del Web » Programando para Internet » Javascript » Frameworks JS »

[SOLUCIONADO] Upload de imagenes con ajax sin iframe

Estas en el tema de Upload de imagenes con ajax sin iframe en el foro de Frameworks JS en Foros del Web. Muy buenas, lo primero gracias por vuestro tiempo que es muy importante. he visto varios ejemplos de como hacer una upload de imágenes en ajax ...
  #1 (permalink)  
Antiguo 27/03/2014, 12:53
 
Fecha de Ingreso: marzo-2008
Ubicación: En casa
Mensajes: 252
Antigüedad: 16 años
Puntos: 4
Pregunta Upload de imagenes con ajax sin iframe

Muy buenas, lo primero gracias por vuestro tiempo que es muy importante.

he visto varios ejemplos de como hacer una upload de imágenes en ajax sin iframes, y he llegado a la conclusión de que no me aclaro de nada

yo he creado una función usando los parámetros que requiere(o eso creo por que si lo hubiera hecho bien funcionaria.)
Código:
function AddImagenes(){
		
		var formulario="#envio_imagen";
		var url = "modules/comunicacion/comentario_imagen.php";
		var destino="#leercomentarios";
		var archivos = document.getElementById("archivos")
		var archivo = archivos.files;
		for(i=0; i<archivo.length; i++)
		{
			data.append('archivo'+i,archivo[i]);
		}
		var data = new FormData();
		$.ajax({
			type: "POST",
			url: url,
			data: $(formulario).serialize(),
			processData:false,
			cache:false,
			success: function(data)
				{
					$(destino).html(data);
				}
		});
	envio_imagen.reset()
}
Realmente no se si me he cocido en mi propio jugo y me he pegado una inventada padre o si simplemente algún cambio lo haría funcionar.
__________________
Ayudar cuesta mucho, dar las gracias no tanto, tenlo en cuenta siempre.
  #2 (permalink)  
Antiguo 27/03/2014, 14:20
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 8 meses
Puntos: 1532
Respuesta: Upload de imagenes con ajax sin iframe

javascript NO tiene acceso al IO, por lo que no se puede usar AJAX para subir archivos.

Sin embargo, el nuevo XHR nivel II si te permite hacerlo, consulta sobre el mismo, incluso hay plugins para jQuery.
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #3 (permalink)  
Antiguo 28/03/2014, 00:54
Avatar de Carlangueitor
Moderador ლ(ಠ益ಠლ)
 
Fecha de Ingreso: marzo-2008
Ubicación: México
Mensajes: 10.037
Antigüedad: 16 años, 1 mes
Puntos: 1329
Respuesta: Upload de imagenes con ajax sin iframe

Ya que usas jQuery podrías usar este plugin: https://github.com/blueimp/jQuery-File-Upload


Saludos
__________________
Grupo Telegram Docker en Español
  #4 (permalink)  
Antiguo 10/04/2014, 04:12
 
Fecha de Ingreso: marzo-2008
Ubicación: En casa
Mensajes: 252
Antigüedad: 16 años
Puntos: 4
De acuerdo Respuesta: Upload de imagenes con ajax sin iframe

Solucionado, no se si es ajax, es XHR o lo que quiera ser, pero funciona y hace lo que necesito, por si a alguien le puede servir aqui queda esto.

Código Javascript:
Ver original
  1. function AddImagen(){
  2.     var formData = new FormData($(".formulario")[0]);
  3.     var destino="#leercomentarios";
  4.     //hacemos la petición ajax  
  5.     $.ajax({
  6.         url: 'modules/comunicacion/comentario_imagen.php',  
  7.         type: 'POST',
  8.         data: formData,
  9.         cache: false,
  10.         contentType: false,
  11.         processData: false,
  12.         //una vez finalizado correctamente
  13.             success: function(data)
  14.             {
  15.                 envio_comentario.reset();
  16.                 $(destino).html(data);
  17.             },
  18.         //si ha ocurrido un error
  19.             error: function()
  20.             {
  21.                //aqui codigo mal
  22.                
  23.             }
  24.         });
  25.     }
__________________
Ayudar cuesta mucho, dar las gracias no tanto, tenlo en cuenta siempre.

Etiquetas: ajax, formulario, funcion, html, iframe, imagenes, php, upload
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 19:50.