Foros del Web » Programando para Internet » PHP »

No sube imagen

Estas en el tema de No sube imagen en el foro de PHP en Foros del Web. solucionado en el ultimo post...
  #1 (permalink)  
Antiguo 02/10/2007, 04:08
 
Fecha de Ingreso: febrero-2005
Mensajes: 81
Antigüedad: 19 años, 9 meses
Puntos: 0
No sube imagen

solucionado en el ultimo post

Última edición por klareNs; 11/03/2008 a las 09:29
  #2 (permalink)  
Antiguo 02/10/2007, 04:14
 
Fecha de Ingreso: febrero-2005
Mensajes: 81
Antigüedad: 19 años, 9 meses
Puntos: 0
Re: No sube imagen

me he equivocado y lo he ducplicado

Última edición por klareNs; 02/10/2007 a las 04:16 Razón: duplicado
  #3 (permalink)  
Antiguo 02/10/2007, 04:34
 
Fecha de Ingreso: octubre-2004
Mensajes: 2.627
Antigüedad: 20 años
Puntos: 48
Re: No sube imagen

Si te funciona en local, puede ser un tema de permisos o configuracion del servidor.

Prueba dentro del if del move_uploaded_file() meter un chmod() para darle al nuevo fichero creado unos permisos mas universales (comienza con un 0777). Puede ser que el fichero si este subido, pero como el dueño es el usuario PHP puede que sea invidible al usuario FTP. Depende de la configuracion.
  #4 (permalink)  
Antiguo 02/10/2007, 04:48
 
Fecha de Ingreso: febrero-2005
Mensajes: 81
Antigüedad: 19 años, 9 meses
Puntos: 0
Re: No sube imagen

he probado a ponerlo donde me has dicho pero sigue sin subir el archivo al directorio y sin darme error.

Cita:
Código PHP:
if($nombre_archivo!=""){
    if (!((
strpos($tipo_archivo"gif") || strpos($tipo_archivo"jpeg")) && ($tamano_archivo 1000000))) {
        echo 
"La extensión o el tamaño de los archivos no es correcta. <br><br><table><tr><td><li>Se permiten archivos .gif o .jpg<br><li>se permiten archivos de 100 Kb máximo.</td></tr></table>";
    }else{
        if (
move_uploaded_file($HTTP_POST_FILES['userfile']['tmp_name'], "../../images/fotos/".$nombre_archivo)){
            
chmod("../../images/fotos/".$nombre_archivo0777);  // octal; valor correcto 
            
echo "El archivo ha sido cargado correctamente.";
            
$imagen=", `autor`= '".$nombre_archivo."'";
        }else{
            echo 
"Ocurrió algún error al subir el fichero. No pudo guardarse.";
        }
    } 
    } 
He probado a cambiar el directorio por uno que no exista y me da error de localizacion del directorio, si la imagen es demasiado grande me da error de tamaño, pero si esta todo correcto no la sube. me estoy volviendo un poco tarumba ya...xdd porque lo voy probando en el wamp y me va perfectamente, miro los permisos de los directorios y estan todos a 777 y los archivos igual.
  #5 (permalink)  
Antiguo 02/10/2007, 04:52
 
Fecha de Ingreso: octubre-2004
Mensajes: 2.627
Antigüedad: 20 años
Puntos: 48
Re: No sube imagen

¿El nombre del fichero tiene espacios, acentos, ñ o cualquier otro caracter extraño? Prueba con el nombre mas sencillo, fichero.extension.
  #6 (permalink)  
Antiguo 02/10/2007, 05:04
 
Fecha de Ingreso: febrero-2005
Mensajes: 81
Antigüedad: 19 años, 9 meses
Puntos: 0
Re: No sube imagen

he probado con la imagen foto.jpg y no la sube :S

puede ser algun permiso del servidor? como puedo saber si la carpeta temporal esta habilitada o no? hay alguna forma de saberlo? ya que el nombre de $HTTP_POST_FILES['userfile']['name']; si que me lo pilla, pero eso viene del post. a lo mejor han desabilitado la carpeta temporal donde se suben los archivos al pincipio no?
  #7 (permalink)  
Antiguo 02/10/2007, 05:12
 
Fecha de Ingreso: octubre-2004
Mensajes: 2.627
Antigüedad: 20 años
Puntos: 48
Re: No sube imagen

El problema es que no te falla el move_uploaded_file(). No se, prueba a hacer un filesize($HTTP_POST_FILES['userfile']['tmp_name']); no vaya a ser que sea un fichero vacio.
  #8 (permalink)  
Antiguo 02/10/2007, 05:22
 
Fecha de Ingreso: febrero-2005
Mensajes: 81
Antigüedad: 19 años, 9 meses
Puntos: 0
Re: No sube imagen

me da este error al hacer el filesize.

Última edición por klareNs; 11/03/2008 a las 09:30
  #9 (permalink)  
Antiguo 02/10/2007, 05:52
 
Fecha de Ingreso: febrero-2005
Mensajes: 81
Antigüedad: 19 años, 9 meses
Puntos: 0
Re: No sube imagen

mi duda es donde se crea el tmp este? ya que yo ejecuto una pagina en un subdirectorio de la raiz, no en la raiz, puede que ahi este el error?
  #10 (permalink)  
Antiguo 02/10/2007, 05:56
 
Fecha de Ingreso: julio-2006
Mensajes: 96
Antigüedad: 18 años, 4 meses
Puntos: 2
Re: No sube imagen

Cita:
Iniciado por klareNs Ver Mensaje
mi duda es donde se crea el tmp este? ya que yo ejecuto una pagina en un subdirectorio de la raiz, no en la raiz, puede que ahi este el error?

proba con copy(ficherolocal,ficherofinal);
quizas te funcione , igual de todos modos te aconsejo que move_uploaded_file() lo pongas asi $subok = move_uploaded_file(); con su respectivos parametros y luego haz un echo var_dump($subok); , para ver que resultado te arroja la ejecucion de esa funcion , quizas asi veas mejor el error.

PD: el temporal se crea en la carpeta /tmp a la cual solo tiene acceso el sistema o nosotros via la funciones de php para creacion de temporales.

  #11 (permalink)  
Antiguo 02/10/2007, 06:15
 
Fecha de Ingreso: febrero-2005
Mensajes: 81
Antigüedad: 19 años, 9 meses
Puntos: 0
Re: No sube imagen

lo he echo con copy(), sigue dando el mismo error con el filesize, pero ahora la veo en el browser y en el webftp, aunque no se porque en el filezilla no la veo subida :S
  #12 (permalink)  
Antiguo 22/10/2007, 22:46
 
Fecha de Ingreso: octubre-2007
Mensajes: 1
Antigüedad: 17 años, 1 mes
Puntos: 0
Pregunta Re: No sube imagen

PUDISTE SOLUCIONAR EL PROBLEMA.?
A MI ME PASA LO MISMO.

LOS ARCHIVOS QUE DESEO SUBIR AL SERVIDOR, EN MI CASO IMAGENES, LOS SUBE PERO A LA CARPETA DE MI PC, FIJATE EN TU CARPETA LOCAL DONDE TENES LA PAGINA. O SI NO, BUSCALO EN TU DISCO CON EL NOMBRE QUE DEBERIA HABER SIDO CREADO (EJEMPLO: NOTICIA1.JPG)

SI LOGRO SOLUCIONARLO TE AVISO, ESPERO LO MISMO DE TI.

ANDRES


Cita:
Iniciado por klareNs Ver Mensaje
Buenas,

Tengo un problema a la hora de subir imagenes al servidor. Es una aplicacion para modificar noticias. La de crear noticias nuevas no la he echo aun. Y me funciona en LAN en el servidor wamp, pero en el servidor externo no me funciona.

El problema es que no me da ningun error. Inserto el nombre d ela imagen en la base de datos y me lo hace bien, pero no me sube la imagen al sitio, y no da absolutamente ningun error, me dice que la imagen se ha subido perfectamente, pero voy al ftp y no esta.

No se si a alguien le habra pasado nunca. Los permisos de la carpeta de imagenes son de 777 y la de todos sus "hijos" tambien.

aqui os pongo el codigo por si acaso veis algo raro.

Código PHP:
//datos del arhivo
    
$imagen="";
    
$nombre_archivo $HTTP_POST_FILES['userfile']['name'];
    
$tipo_archivo $HTTP_POST_FILES['userfile']['type'];
    
$tamano_archivo $HTTP_POST_FILES['userfile']['size'];

    
//compruebo si las características del archivo son las que deseo
    
if($nombre_archivo!=""){
    if (!((
strpos($tipo_archivo"gif") || strpos($tipo_archivo"jpeg")) && ($tamano_archivo 1000000))) {
        echo 
"La extensión o el tamaño de los archivos no es correcta. <br><br><table><tr><td><li>Se permiten archivos .gif o .jpg<br><li>se permiten archivos de 100 Kb máximo.</td></tr></table>";
    }else{
        if (
move_uploaded_file($HTTP_POST_FILES['userfile']['tmp_name'], "../../images/fotos/".$nombre_archivo)){
            echo 
"El archivo ha sido cargado correctamente.";
            
$imagen=", `autor`= '".$nombre_archivo."'";
        }else{
            echo 
"Ocurrió algún error al subir el fichero. No pudo guardarse.";
        }
    } 
    }        
    

    
    
$conexion=new DBConnection;
    
    
$conexion->conectar();
    
    
$sql="UPDATE `noticias` SET 
        `descripcion` = '"
.$desc."', `descripcion2`= '".$desc2."', `descfoto`= '".$descfoto."', `escrito`='".$author."', `fotografia`='".$photo."', `titulo`= '".$titulo."', `subtitulo`= '".$subtitulo."'".$imagen." WHERE id_noticias=\"".$dades['idregister']."\"";
    
    
//echo $sql;
    
$resultado=$conexion->update($sql) or die (mysql_error()); 
    
    echo 
"<br /><br />Actualizado con &eacute;xito"
gracias por adelantado
  #13 (permalink)  
Antiguo 24/10/2007, 03:46
 
Fecha de Ingreso: febrero-2005
Mensajes: 81
Antigüedad: 19 años, 9 meses
Puntos: 0
Re: No sube imagen

Solucionado:

He utilizado la funcion COPY() en lugar de la funcion MOVE_UPLOADED_FILES(), y funciona perfectamente ahora.
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 14:46.