Ver Mensaje Individual
  #1 (permalink)  
Antiguo 01/04/2009, 05:27
lperruca
 
Fecha de Ingreso: abril-2009
Mensajes: 2
Antigüedad: 15 años, 1 mes
Puntos: 0
Problema con base64_encode y archivos grandes.

Hola, al grupo y saludos a todos. Es la primera vez que posteo en el foro, y me estoy volviendo loco con un tema:

Estoy teniendo problemas a la hora de adjuntar archivos grandes (los que he probado son de aprox. 3,5 MB)

Al final pongo la parte del código que utilizo para ello.

La llamada a base64_encode la tengo comentada, porque es la que me tira abajo la aplicación, pero claro, sin ella no puede enviar el archivo.

He estado mirando por los manuales y foros de php, y he visto 2 cosas:

Utilizar la función chunk_split de la forma: $base64Document=chunk_split(base64_encode($leido)) ;
No se con qué finalidad se usaría esta función, pero el caso es que lo he probado, y nada.

Otra cosa que he visto y que no sé si es cierta es que la longitud máxima de un string es de 64K. Esto explicaría que no funcionara el base64_encode, pero también debería fallar el fread, cosa que no ocurre.

Utilizo un alojamiento compartido con la versión 4.3.9 de PHP. Sí, ya sé, pero es lo que tengo.

En fin, ¿alguna sugerencia?

Un saludo

Luis Perruca

$leido=fread($fileDocument,filesize($adjunto));
fclose($fileDocument);
if($leido)
{
echo "Fichero Leido (" . strlen($leido) . " bytes)<br>";
//$base64Document=base64_encode($leido);
echo "codificado<br>";
}
else {
echo "Error al leer<br>";
}