Ver Mensaje Individual
  #1 (permalink)  
Antiguo 02/05/2010, 12:10
Avatar de ONahuelO
ONahuelO
 
Fecha de Ingreso: junio-2009
Ubicación: Gualeguaychú, Argentina
Mensajes: 144
Antigüedad: 14 años, 10 meses
Puntos: 4
[Ayuda] Imagen desde DB

Hola, les comento que me he topado con un problema al tratar de mostrar una imagen que tengo guardada en mi db, para hacer el codigo me he basado en esta guia: http://www.forosdelweb.com/f18/tutor...inario-127775/


este es mi codigo:

Index:
Código PHP:
<?php 
if(!empty($_POST['up'])){ 
$binario_nombre_temporal=$_FILES['archivo']['tmp_name'] ;
$binario_contenido base64_encode(addslashes(fread(fopen($binario_nombre_temporal"rb"), filesize($binario_nombre_temporal))));
$binario_nombre=$_FILES['archivo']['name'];
$binario_peso=$_FILES['archivo']['size'];
$binario_tipo=$_FILES['archivo']['type'];
$d rand(1,999).rand(1,999).rand(1,999).rand(1,999).rand(1,999).rand(1,999).rand(1,999).rand(1,999).rand(1,999).rand(1,999).rand(1,999).rand(1,999);
$l = new PDO ('sqlite:database.db');
$ll $l -> Query("INSERT INTO images values('$binario_nombre','$binario_peso','$binario_contenido','$binario_tipo','$d')");
$l NULL;
$ll NULL;
print(
'Archivo guardado <a href="ver.php?ac=mostrar&amp;i='.$d.'" >mostrar<a>');

else { print(
'<FORM enctype="multipart/form-data" method="post" action="index.php" /><input type="hidden" name="up" value="1"  /><INPUT type="file" name="archivo" /><INPUT type="submit" name="submit" value="Subir archivo" /></FORM>'); 
}
?>

Archivo que muestra las imagenes:
Código PHP:
<?php 
$l 
= new PDO ('sqlite:database.db');
$ll $l -> Query("SELECT nombre, peso, bin, tipo from images where serial='".$_GET['i']."'") -> Fetch();
header("Content-type: ".$ll[3]);
echo 
base64_decode($ll[2]);
?>

y el resultado que veo al tratar de ver una imagen es este:


la verdad no entiendo porque es, aca les dejo mi db, porsi las dudas (SQLite3):

Código:
CREATE TABLE [images] (
  [nombre] TEXT, 
  [peso] TEXT, 
  [bin] TEXT, 
  [tipo] TEXT, 
  [serial] TEXT);
Saludos, espero que me puedan ayudar, desde ya muchas gracias