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

Enviar archivos

Estas en el tema de Enviar archivos en el foro de Frameworks JS en Foros del Web. tengo el siguiente codigo Código: $(document).ready(function(){ $('#boton').click(function(){ event.preventDefault(); $.ajax({ type: "POST", url: "uploadimg.php", beforeSend:function(){$("#upload").hide().fadeIn("slow");}, error:$("#error").hide().fadeIn("slow"), data: "img="+document.getElementById('img').value, success: function(datos){ if (datos==1) { alert("si") } else ...
  #1 (permalink)  
Antiguo 14/03/2011, 14:50
 
Fecha de Ingreso: agosto-2008
Mensajes: 108
Antigüedad: 16 años, 4 meses
Puntos: 0
Enviar archivos

tengo el siguiente codigo
Código:
$(document).ready(function(){
$('#boton').click(function(){
 event.preventDefault();
    			$.ajax({
			    		type: "POST",
					    url: "uploadimg.php",
					beforeSend:function(){$("#upload").hide().fadeIn("slow");},
						error:$("#error").hide().fadeIn("slow"),
						data: "img="+document.getElementById('img').value,
				   success: function(datos){
       							if (datos==1)
									{
										alert("si")
									}
									else		
									{
										
										$("#upload").css({'display':'none'});
										//$("#success").css({'display':'none'});
										//$("#upload").css({'display':'none'});
									}
				      			}
        					}); //fin ajax
		
						});
					});
y este para subir las imagenes
Código:
function generar($Paswd_Length){  
$lower_ascii_bound = 50;  
$upper_ascii_bound = 122;  

$notuse = array (58,59,60,61,62,63,64,73,79,91,92,93,94,95,96,108, 111);  
$i = 0;  
$password = '';  
while ($i < $Paswd_Length){  
mt_srand((double)microtime() * 1000000);  

$randnum = mt_rand($lower_ascii_bound, $upper_ascii_bound);  
if (!in_array($randnum, $notuse)){  
$password = $password.chr($randnum);  
$i++;  
};  
};  
return $password;  
} ;

$uploaddir = 'upload/';
$uploadfile = $uploaddir . generar(15) . basename($_FILES['img']['name']);

if (move_uploaded_file($_FILES['img']['tmp_name'], $uploadfile)) {
  echo "success";
} else {
  echo "error";
}
el detalle esta en que no me sube las imagenes...
Alguien que me pueda ayudar?
  #2 (permalink)  
Antiguo 14/03/2011, 14:54
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años, 6 meses
Puntos: 1517
Respuesta: Enviar archivos

Vas a tener que visualizar los errores (si es que hay alguno) verificando que te devuelve a través de ajax. Crea algún div y muestra en el que te devuelve PHP.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #3 (permalink)  
Antiguo 14/03/2011, 14:54
 
Fecha de Ingreso: febrero-2009
Mensajes: 580
Antigüedad: 15 años, 10 meses
Puntos: 13
Respuesta: Enviar archivos

y te cambia el botón del fondo? y te sale el mensaje de succes? (uso este plugin para un proyecto, creo)

deberías contarnos un poco más..., la carpeta existe? tiene permisos de escritura? , ..

Salut!
__________________
¿ya conoces la red social de cocina? descubre y comparte recetas de cocina
TONIWEB, un programador web freelance
  #4 (permalink)  
Antiguo 14/03/2011, 14:59
 
Fecha de Ingreso: agosto-2008
Mensajes: 108
Antigüedad: 16 años, 4 meses
Puntos: 0
Respuesta: Enviar archivos

Todo esta bien, simplemente no sube el archivo, me devuelve error.

document.getElementById('img').value es un input type="file"
  #5 (permalink)  
Antiguo 14/03/2011, 15:08
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 6 meses
Puntos: 2135
Tema movido desde PHP a AJAX

Te recuerdo que desde AJAX no puedes enviar archivos, el protocolo no soporta lo necesario para ello y el browser no te da el contenido binario para accesar a la imagen, es por eso que document.getElementById('img').value te da error, ya que es una protección de seguridad.

Saludos.
  #6 (permalink)  
Antiguo 14/03/2011, 15:36
 
Fecha de Ingreso: agosto-2008
Mensajes: 108
Antigüedad: 16 años, 4 meses
Puntos: 0
Respuesta: Enviar archivos

ok, gracias.

Etiquetas: php
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 08:16.