Ahora si funciona el Ajax, pero me lanza un error en esta parte:

Código PHP:
if(!is_uploaded_file($_FILES['archivo']['tmp_name']))
    {
        echo 
'Error al subir la imagen';
        return 
false;
    } 

Me devuelve "Error al subir la imagen".

PD: Leyendo por hay dicen que no se puede subir archivos por AJAX.. (?)
Última modificación: 4 Sep, 2012, 10:10 am por V1K1NGO.
si se puede... pero de otra forma, te armo el archivo y lo subo...
Ok.. gracias por todoSmile
listo we y funciona muy bien ya lo testie en mi localhost...
primero que nada tienes que subir estos dos JS a dond estan los archivos (el index y el upload) y debes crear la carpeta uploads ya que ai es donde se subiran las imagenes.


ahora el archivo index.php o como quieras que se llame no importa el nombre debe contener esto
Código:
<html>
<head>
<script language="javascript" src="jquery-1.3.1.min.js"></script>
<script language="javascript" src="AjaxUpload.2.0.min.js"></script>
<script language="javascript">
$(document).ready(function(){
    var button = $('#boton_subir_imagen'), interval;
    new AjaxUpload('#boton_subir_imagen', {
        action: 'upload.php',
        onComplete: function(file, response){
            $('#nombre_de_la_imagen').html(response);
        }    
    });
});
</script>
</head>

<body>
<div id="boton_subir_imagen"><button type="button" />Subir Imagen</button></div>
<div id="nombre_de_la_imagen"></div>
</body>
</html>

y el archivo upload.php debe tener esto:
Código PHP:
<?php

    $tamano   
$_FILES["userfile"]['size'];
    
$tipo      $_FILES["userfile"]['type'];
    
$archivo  $_FILES["userfile"]['name'];
    
$prefijo  substr(md5(uniqid(rand())),0,16);
    
$ext substr(strrchr($archivo'.'), 1);
    
    if(!
is_uploaded_file($_FILES['userfile']['tmp_name']))
    {
        echo 
'Error al subir la imagen';
        return 
false;
    }
    if(!
preg_match("#^(gif|jpg|jpeg|jpe|bmp|png)$#i"$ext))
    {
        echo 
'Archivo con extensión no valida.';
        return 
false;
    }
    
$nombre $prefijo "." $ext;
    
$destino 'uploads/';
    
    
$moveimg = @move_uploaded_file($_FILES['userfile']['tmp_name'], $destino."/".$nombre);
    if(!
$moveimg)
    {
        echo 
'No se a podido cargar la imagen.';
        return 
false;
    }
    if(
$_FILES["userfile"]['error'])
    {
        @
unlink($destino);
        echo 
'error';
        return 
false;
    }           
    
    echo 
"Imagen subida con exito: <img src='".$destino."/".$nombre."' />";
    return 
false;
?>

ya tu puedes editar por ejemplo la ruta de la imagen o el estilo por asi com te lo doy funciona al 100% como te daras cuenta en el upload.php regresa al final la imagen tambien entonces cuando subes la imagen en la parte de abajo te dice

Imagen subida con exito: -----

donde estan los guines te meustra la imagen que se subio..
espero te sirva ya sabes cualquier cosa comenta..
saludos!!
Muchas gracias Edson Smile Funciona perfecto Wink