Foros del Web » Programando para Internet » PHP »

Problema al abrir un campo blob con php

Estas en el tema de Problema al abrir un campo blob con php en el foro de PHP en Foros del Web. Hola, me pasa una cosa muy curiosa, tengo un campo blob en base de datos mysql que guardia archivos .doc y .pdf. Desde la web ...
  #1 (permalink)  
Antiguo 15/10/2008, 03:37
 
Fecha de Ingreso: septiembre-2007
Mensajes: 106
Antigüedad: 16 años, 7 meses
Puntos: 1
Problema al abrir un campo blob con php

Hola, me pasa una cosa muy curiosa, tengo un campo blob en base de datos mysql que guardia archivos .doc y .pdf. Desde la web cuando le doy a ver un documento y es .doc va perfecto tanto si le doy a abrir directamente como si guardo localmente y luego lo abro. En cambio cuando se trata de un .pdf si le doy directamente a abrir me da el siguiente mensaje de error:
"Error al abrir el archivo. El documento no se encuentra".
Y si le doy a guardar localmente y luego lo abre funciona correctamente por lo que deduzco que el archivo está bien.
Pero aún hay más, me acabo de dar cuenta de que pasa este error si lo abro con explorer, si lo abro con firefox no pasa.... les pego el código php que abre el campo blob:
Código PHP:
<?php
    session_start
();
    
ini_set("include_path"$_SESSION['ipath']);

    
$id $_REQUEST["id_fichero"];
  
    
$enlace mysql_connect ("xxxx.com""xxxx_xxxb""****") or die ('I cannot connect to the database because: ' mysql_error());
    
mysql_select_db ("ceesib_ceesibdb");
     
    
// Realizar una consulta SQL
    
if (isset($_REQUEST["imagen"]))
        
$consulta "SELECT nombre, tipo, size, contenido FROM ceesib_imagen WHERE Id="$id;
    else
        
$consulta "SELECT nombre, tipo, size, contenido FROM ceesib_fichero WHERE Id="$id;
        
    
$resultado mysql_query($consulta);
    while(
$datos_fichero mysql_fetch_array($resultado))
    {
        
$nombre $datos_fichero["nombre"];    
        
$tipo $datos_fichero["tipo"];
        
$size $datos_fichero["size"];  
        
$contenido $datos_fichero["contenido"];
    }
    
header("Content-type: " $tipo );
    
header("Content-length: "$size);
    
header("Pragma: no-cache");
    if (
strstr($tipo"image")){   
        
header("Content-Disposition: inline; filename=\""$nombre ."\"");
    } else { 
        
header("Content-Disposition: attachment; filename=\""$nombre ."\"");
    } 
        
   
        print 
$contenido;
    
    unset(
$contenido); 
?>
Haber si se les ocurre algo por que yo lo he mirado y requetemirado y no veo el error... Gracias anticipadas...!!!!
  #2 (permalink)  
Antiguo 15/10/2008, 09:09
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: Problema al abrir un campo blob con php

Hola xamamo,

El error esta en tu explorador, no en tu código PHP, de alguna forma tu explorador al darle abrir borra el archivo, necesitas checar eso, pruebalo en otra maquina, etc.

Saludos.
  #3 (permalink)  
Antiguo 16/10/2008, 02:33
 
Fecha de Ingreso: septiembre-2007
Mensajes: 106
Antigüedad: 16 años, 7 meses
Puntos: 1
Buenas, gracias por contestar.

El problema está en que no es solo en mi máquina, pasa en todas las que lo he probado...

Porque sería una solución a esto que cuando sale el aviso que te dice "abrir o guadar" el archivo te dijese solamente guardar.

Es posible esto??? se puede hacer??

Última edición por GatorV; 16/10/2008 a las 10:57
  #4 (permalink)  
Antiguo 16/10/2008, 10:58
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: Problema al abrir un campo blob con php

Hola xamamo,

Como te comento eso depende del explorador y no de PHP, desde PHP no puedes modificar NADA con respecto al explorador.

Saludos.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Tema Cerrado




La zona horaria es GMT -6. Ahora son las 06:49.