Ver Mensaje Individual
  #1 (permalink)  
Antiguo 05/08/2010, 22:06
RonN91
 
Fecha de Ingreso: julio-2010
Mensajes: 2
Antigüedad: 13 años, 9 meses
Puntos: 0
Pregunta Mejorar Código

Hola amigos foreros, estoy haciendo un formulario para almacenar imágenes en la BD, luego al descargarlas (usando headers y ob_get) normal, puedo hacerlo... el probema está en que pasado un cierto tiempo, al abrir las imágenes descargadas, salen en blanco. Aquí los códigos:

Código PHP:
<?php
 
/***** guardar_archivo.php *****/
 
$archivo $_FILES["archivito"]["tmp_name"]; 
 
$tamanio $_FILES["archivito"]["size"];
 
$tipo    $_FILES["archivito"]["type"];
 
$nombre  $_FILES["archivito"]["name"];
 
$titulo  $_POST["nom"];
 
$nfac      $_POST["nfac"];
 
$imp      $_POST["imp"];
 
$cant      $_POST["cant"];
 
 require_once 
"conexion.php";
 
$link conectarBD();
 
 if ( 
$archivo != "none" ){
    
$fp fopen($archivo"rb");
    
$contenido fread($fp$tamanio);
    
$contenido addslashes($contenido);
    
fclose($fp); 

    
$qry "INSERT INTO archivos VALUES 
            ('$nfac','$nombre','$titulo','$contenido','$tipo','$cant','$imp')"
;

    
$res mysql_query($qry$link) or die(mysql_error($link));

if(!
$res){
   echo 
"Error, no se pudo guardar correctamente.";
} else {
  echo 
"Eureka! Se insertó correctamente. <a href=\"guardar_archivos.html\">Regresar</a>";
}
}
?>

Descarga:

Código PHP:
<?php
/****** descargar_archivo.php ******/
ob_start();
 
$nf $_REQUEST['id'];
 require_once 
"conexion.php";
 
$link conectarBD();

 
$qry "SELECT tipo, contenido FROM archivos WHERE id=$nf";
 
$res mysql_query($qry$link) or die(mysql_error($link));
 
$tipo mysql_result($res0"tipo");
 
$contenido mysql_result($res0"contenido");
 
 
$contenido ob_get_clean();

 
header("Content-type: $tipo");
 
header("Content-Disposition: attachment; filename=factura$nf.jpeg");  
 
header("Pragma: no-cache");  
 
header("Expires: 0");   

 echo 
$contenido;
?>
Cuento con su apoyo amigos!