Imagen en Base Datos php

Hola, en una consulta anterior te solicite ayuda para trabajar con imágenes en una base de datos en aquel entonces tu me recomendaste que guardara el Path de la imagen en la base de datos y la imagen la guardara en una carpeta. Me enviaste el siguiente código:
$ruta = "imagenes/{$_FILES['imagen1'][name]}";
if(!copy($_FILES['imagen']['tmp_name'], $ruta))
{
echo "error al copiar el archivo";
}
else
{
echo "archivo subido con exito";
}
Estuvo probando el cogido bajo windows y funciona pero al subir al servidor LINUX solo funciona con imágenes de 1K cuando inserto una imagen grande no la visualiza y la copia con errores. Que puedo hacer. Cualquier sugerencia estaría muy agradecido.
Respuesta
1
Por lo que estoy investigando puede ser problema de configuración en el servidor linux. Tu código en windows funciona bien y quizá si lo pruebas sobre otro servidor linux también.
Revisa la configuración del servidor Linux:
- Las directivas de /etc/php.ini deben estar bien configuradas:
memory_limit = 128M
post_max_size = 64M
upload_max_filesize = 32M
Para subir ficheros de 32MB, por ejemplo.
- Crea un elemento oculto para indicar el tamaño máximo de los archivos que pretendes subir:
<FORM method=post encType=multipart/form-data>
<INPUT type=hidden value=33554432 name=MAX_FILE_SIZE>
<INPUT type=file name=fichero>
<INPUT type=submit value=Enviar>
</FORM>
- Comprueba también /etc/httpd/conf.d/php.conf
<Files *.php>
SetOutputFilter PHP
SetInputFilter PHP
LimitRequestBody 33554432
</Files>
Este ejemplo es para poder subir archivos de 32MB. Revisa toda esa configuración y si sigue sin funcionar continuamos buscando otros posibles problemas.
Quizá no tenga nada que ver el sistema operativo, sino la configuración. Hay opciones para limitar la subida de archivos y el tamaño.
Lo primero que tienes que comprobar es si el servidor al que intentas subir imágenes lo permite o no.
Usa el siguiente código para averiguar el tamaño máximo que puedes subir:
if (ini_get("file_uploads")) {
// Si está permitido subir imagenes
$tamanio_maximo = ini_get("upload_max_filesize");
} else {
// No está permitido subir imagenes
}
En $tamanio_maximo obtendrás 1K en caso de que ese servidor no admita más.
Comentame el resultado.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas