Problemas con upload en php5

Hola a todos.
Creo que este es el post que más precisa con mi problema. Recientemente he migrado mi portal a un servidor dedicado (servicio de hosting) el cual tiene PHP Version 5.1.6, anteriormente estaba en un servidor con PHP Version 5.2.6 y todas las aplicaciones funcionaban a la perfección. Ahora no puedo subir archivos al parecer porque no encuentra la ruta del archivo temporal que intento cargar.
Debo aclarar que lo que se trata es de seleccionar un archivo (un .jpg) y trabajar en base a este para guardar el mismo .jpg pero a escala (no quiero copiar y pegar a otro directorio)
Mi pregunta es: ¿El problema se puede deber a la estructura de los direcctorios de mi nuevo servidor? Tavez no reconoce el /tmp que los hosting normales tienen.
Espero sus recomendaciones para solucionar mi problema
Respuesta
1
Aunque no debería presentar problemas al cambiar de version o de hosting, ya que php guarda por defecto en una carpeta temporal todos los archivos que se suban desde un campo file, y este se configura en php.ini a lo cual si es un hosting comercial no tienes acceso a modificar esto, lo único que te queda es averiguar donde lo guarda y el resto de configuraciones, para trabajar con esa información.
El archivo de configuración php.ini contiene directivas para autorizar o desautorizar el envío de archivos por medio de un formulario y también configurarlo:
La info que necesitas y esta en php.ini es:
file_uploads= On/Off permite autorizar o desautorizar el envío de archivos.
upload_tmp_dir = directorio permite definir el directorio temporal donde se colocará el archivo cargado.
upload_max_filesize = 2M permite definir el tamaño máximo autorizado del archivo. Si este límite es sobrepasado, el servidor enviará un código de error.
post_max_size indica el tamaño máximo de los datos enviados en un formulario. Esta directiva prima sobre upload_max_filesize, por lo que hay que asegurarse de tener post_max_size supeior a upload_max_filesize
Si no tiene acceso a la configuración (caso de un sitio web alojado en el servidor del proveedor de acceso o en el caso de un alojamiento mutualizado), entonces puede verificar la configuración con la función phpinfo():
phpinfo();
?>
Trata de subir un archivo y coloca en tu script los mensajes de error y miramos que más puede ser.
<?
if ($_FILES['nom_du_fichier']['error']) {
switch ($_FILES['nom_du_fichier']['error']){
case 1: // UPLOAD_ERR_INI_SIZE
echo"El archivo sobrepasa el limite autorizado por el servidor(archivo php.ini) !";
break;
case 2: // UPLOAD_ERR_FORM_SIZE
echo "El archivo sobrepasa el limite autorizado en el formulario HTML !");
break;
case 3: // UPLOAD_ERR_PARTIAL
echo "El envio del archivo ha sido suspendido durante la transferencia!";
break;
case 4: // UPLOAD_ERR_NO_FILE
echo "El archivo que ha enviado tiene un tamaño nulo !");
break;
}
}
else {
// $_FILES['nom_del_archivo']['error'] vale 0 es decir UPLOAD_ERR_OK
// lo que significa que no ha habido ningún error
} ?>
Estimado ALMONATO
Después de haberme roto la cabeza intentando solucionar eso y también de comprobar lo que tu me estás recomendando, logré solucionar el inconveniente del Upload de archivos en mi nuevo hosting.
Tal vez la solución era muy simple después de todo, se trató solamente de permisos de la carpeta donde iba a alojar la imagen. Antes de intentar todo no me percaté de ese detalle, y no es que no le asigne los permisos para que se puedan grabar y crear archivos( .jpg) en esa carpeta sino que el nuevo hosting requiere otro código de permiso, me explico, en el hosting antiguo el código de permiso de esa carpeta funcionaba a la perfección con 755 pero en el nuevo hosting se tiene que establecer a 777. Con esto todo funcionó a la perfección.
Gracias por tu respuesta.
Carlos Z

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas