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

subir imagen con XAJAX

Estas en el tema de subir imagen con XAJAX en el foro de Frameworks JS en Foros del Web. hola a todos. Tengo esta funcion para xajax k sirve para procesar un formulario donde aparte de campos de texto hay una foto k subir: ...
  #1 (permalink)  
Antiguo 19/09/2007, 16:17
 
Fecha de Ingreso: marzo-2004
Mensajes: 283
Antigüedad: 20 años, 9 meses
Puntos: 2
subir imagen con XAJAX

hola a todos.
Tengo esta funcion para xajax k sirve para procesar un formulario donde aparte de campos de texto hay una foto k subir:

Código PHP:
function procesar_formulario($form_entrada)
    {
       
//creo el xajaxResponse para generar una salida
       
$respuesta = new xajaxResponse('UTF-8');
    
       
//validación
       
$error_form "";
       if (
$form_entrada["nombre"] == "")
          
$error_form 'Porfavor escribe tu nombre';
       elseif (
$form_entrada["password"] == "")
          
$error_form "Porfavor escribe tu contraseña";
       elseif (
$form_entrada["sexo"] == "")
          
$error_form "Porfavor dinos si eres una chica o un chico!";
       elseif (
$form_entrada["edad"] == "")
          
$error_form "Porfavor dinos que edad tienes";
       elseif (
$form_entrada["pais"] == "999")
          
$error_form "Porfavor dinos en que pais vives";
       elseif (
$form_entrada["ciudad"] == "0")
          
$error_form "Porfavor dinos en que ciudad vives";
       elseif (
$form_entrada["foto"] == "")
          
$error_form "Porfavor incluye una foto tuya";
       elseif (
$form_entrada["descripcion"] == "")
          
$error_form "Porfavor dinos como te describirias";
       elseif (
$form_entrada["email"] == "")
          
$error_form "Porfavor dejanos tu email";
       elseif (!isset(
$form_entrada["condiciones"]))
          
$error_form "Debes aceptar las condiciones para registrarte";
          
    
//Existe un campo vacio, el formulario no se procesa y se muestra en pantalla el campo que se debe rellenar:
        
if ($error_form != "")
        {
            
$respuesta->addAssign("mensaje","innerHTML","<span style='color:red;'><p>$error_form</p></span>");
        }
    
//Todos los campos han sido rellenados, el formulario se procesa:
        
else
        {    
            
//Enviamos a las bases los datos del formulario;
            
mysql_query("INSERT INTO usuarios (nombre,password,sexo,edad,pais,ciudad,descripcion,email) values ('".$form_entrada["nombre"]."','".$form_entrada["password"]."','".$form_entrada["sexo"]."','".$form_entrada["edad"]."','".$form_entrada["pais"]."','".$form_entrada["ciudad"]."','".$form_entrada["descripcion"]."','".$form_entrada["email"]."')") or die(mysql_error());
                  
//Guardamos la foto original en el servidor;
                  
move_uploaded_file($HTTP_POST_FILES[$form_entrada["foto"]]['tmp_name'], $dir_fotos_originales."/".$nombre_foto); 
        }
        
       return 
$respuesta;
       
    } 
El caso es k la informacion se envia a las bases de datos perfectamente pero la segunda parte, la de subir la imagen nada de nada. Antes de usar xajax, procesando el formulario como toda la vida, la imagen se subia correctamente. Alguien sabe pork puede ser? Muchas gracias
  #2 (permalink)  
Antiguo 19/09/2007, 17:25
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años, 8 meses
Puntos: 1284
Re: subir imagen con XAJAX

Hola:

Para subir imágenes (o cualquier fichero) no sirve ajax (versiones normales), solo vale un formulario con method="post" y enctype="multipart/form-data"...y con php debes obtenerla con el array $_FILES... eso ya sería PHP

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #3 (permalink)  
Antiguo 19/09/2007, 17:51
 
Fecha de Ingreso: marzo-2004
Mensajes: 283
Antigüedad: 20 años, 9 meses
Puntos: 2
Re: subir imagen con XAJAX

Ya caricatos, se k no vale ajax para ello, y antes yo rellenaba el formulario y al dar a enviar se cargaba otra pagina (procesar.php) k era la k procesaba el envio de datos a bases y la subida de la foto al servidor.
Ahora eso lo estoy haciendo con xajax, y en la funcion k he dejado antes si hay un campo vacio te lo muestra en pantalla y si estan todos rellenos... es ahi donde bien mi problema, pork lo k yo he hecho es meter ahi el codigo k antes tenia en el procesar.php, y el envio de datos a las bases funciona perfectamente, solo k donde antes tenia:
Código PHP:
mysql_query("INSERT INTO usuarios (nombre,password) values ('$nombre"','$password)") or die(mysql_error()); 
ahora tengo:
Código PHP:
mysql_query("INSERT INTO usuarios (nombre,password) values ('".$form_entrada["nombre"]."','".$form_entrada["password"]."')") or die(mysql_error()); 
por cuestiones de como funciona la funcion (usada de un ejemplo de desarrolloweb, yo de xajax entiendo pokisimo) Sin embargo la parte de subir el archivo k antes era esta:
Código PHP:
move_uploaded_file($HTTP_POST_FILES['foto']['tmp_name'], $dir_fotos_originales."/".$nombre_foto); 
ahora no funciona y no se como tengo k arreglarlo, casi al 99% de k el fallo esta en el [foto] k es como se tomaba antes cuando las variables se enviaban directamente desde el formulario sin pasar por ninguna funcion de xajax. Alguien sabria como hacerlo?
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:36.