chguti
Usuario Novato
Usuario Novato

Hola a todos.

Estoy realizando dos scripts php, uno envia un fichero y el otro lo recibe.

Si el fichero que envía el primer script es un fichero de texto, el segundo script lo recibe correctamente. Pero si el fichero a enviar es un fichero binario, el segundo script no recibe el fichero correctamente.

Codigo del primer script (enviafichero.php):

<?php
$fichero = basename("prueba.gif&quotGiño;
header( "Content-Type: image/gif&quotGiño;
header( "Content-Length: ".filesize("prueba.gif&quotGiño);
header( "Content-Disposition: attachment; filename=".$fichero."&quotGiño;
readfile("prueba.gif&quotGiño;
?>

Codigo del segundo script (recibefichero.php):

<?php
$file = fopen ("http://www.miservidor.es/primerscript.php", "r&quotGiño;
$file1 = fopen ("pp.gif", "w&quotGiño;
if (!$file)
{
echo "Error";
exit;
}

while (!feof ($file)) {
$line = fgets ($file, 1024);
fputs($file1,$line);
}
fclose($file);
fclose($file1);
?>

¿Que es lo que estoy haciendo mal?

¿Alguna idea?

Muchas gracias a todos.

Avatar Image
Usuario habitual
Usuario habitual

¿Qué versión de PHP estás usando? Antes de la 4.3, fgets y fputs no pueden usarse con ficheros binarios. Prueba a usar fread() y fwrite() en su lugar.

Saludos.

ATENCIÓN: Este tema no tiene actividad desde hace más de 6 MESES,
te recomendamos abrir un nuevo tema en lugar de responder al actual
Opciones:
Ir al subforo:
Permisos:
TU NO PUEDES Escribir nuevos temas
TU NO PUEDES Responder a los temas
TU NO PUEDES Editar tus propios mensajes
TU NO PUEDES Borrar tus propios mensajes
Temas similares
No se han encontrado temas similares