Foros del Web » Programando para Internet » PHP »

Problema al mostrar una imagen formato BLOB

Estas en el tema de Problema al mostrar una imagen formato BLOB en el foro de PHP en Foros del Web. Hola a todos, os comento mi problema. Tengo una base de datos en PHPMyAdmin para listar los productos de una floristeria. Los campos son Estos: ...
  #1 (permalink)  
Antiguo 20/11/2010, 05:57
 
Fecha de Ingreso: noviembre-2010
Mensajes: 7
Antigüedad: 13 años, 5 meses
Puntos: 0
Problema al mostrar una imagen formato BLOB

Hola a todos, os comento mi problema.
Tengo una base de datos en PHPMyAdmin para listar los productos de una floristeria. Los campos son Estos:
--Nombre - varchar(50)
--Descripción - text
--Categoría - varchar(20)
--Precio - double
--Imágen - blob

Utilizo este código para realizar la consulta de mostrar por pantalla los productos:

Código PHP:
<?php
//Conectamos con la base de datos
  
$host="localhost";
  
$usuario="root";
  
$pass="";
  
$db="floristeria";
  
$conecta=mysql_connect($host,$usuario,$pass);
  if(!
$conecta)
    die(
'Error al conectarse con MySQL: ' mysql_error().' <br>Número del error: '.mysql_errno());
  if (! @
mysql_select_db($db,$conecta))
  {
    echo 
"No se pudo conectar correctamente con la Base de datos";
    exit();
  }   

//Hacemos una consulta en la tabla producto
$result mysql_query ("SELECT * FROM producte");

//Mostramos el contenido de la tabla producto
while ($row mysql_fetch_array ($result)) {
   echo 
'Nombre: '.$row ['nom'].'<br />';
   echo 
'Descripción: '.$row ['descripcio'].'<br />';
   echo 
'Categoria: '.$row ['categoria'].'<br />';
   echo 
'Precio: '.$row ['preu'].'<br />';

# Mostramos la imagen
    
header"Content-Type: image/jpeg"); 
    echo 
$row['imatge'];
}

//Cierra la conexion con la base de datos
mysql_close();
?>
Me muestra todos los campos excepto la imágen que me dice lo siguiente:

Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\floristeria\php\llistar_productes. php:10) in C:\xampp\htdocs\floristeria\php\llistar_productes. php on line 16
GIF89a^^‡��-7"1...i continua

Me gustaría saber que es lo que hago mal. Llevo 2 dias revisando temas i no encuentro la solucion.

1 saludo y gracias de antemano.
  #2 (permalink)  
Antiguo 04/06/2013, 15:00
 
Fecha de Ingreso: enero-2008
Ubicación: Lima
Mensajes: 127
Antigüedad: 16 años, 2 meses
Puntos: 0
Busqueda Respuesta: Problema al mostrar una imagen formato BLOB

Yo tambien llevo el mismo problema hasta ahora no puedo hallar una forma de mostrar este campo blob junto con mis demas campos .


Alguien que pueda brindar su ayuda.
  #3 (permalink)  
Antiguo 04/06/2013, 15:12
 
Fecha de Ingreso: abril-2012
Mensajes: 106
Antigüedad: 12 años
Puntos: 2
Respuesta: Problema al mostrar una imagen formato BLOB

veran hace tiempo tenia el mismo problema pero lo solucione de la siguiente forma:
por ejemplo en la tabla "productos" en el campo "imagen" lo que ahora guardo es la ruta de la imagen no guardo la imagen .por ejemplo:
el campo imagen tendria el siguiente valor: imagenes/imagen.jpg ------>la url o ruta de la imagen . y modificando tu codigo mas o menos seria asi:

tu tabla donde esta la imagen:

--Nombre - varchar(50)
--Descripción - text
--Categoría - varchar(20)
--Precio - double
--Imagen - varchar(50) ------>aqui guardaremos la url o ruta de la imagen

//Conectamos con la base de datos
$host="localhost";
$usuario="root";
$pass="";
$db="floristeria";
$conecta=mysql_connect($host,$usuario,$pass);
if(!$conecta)
die('Error al conectarse con MySQL: ' . mysql_error().' <br>Número del error: '.mysql_errno());
if (! @mysql_select_db($db,$conecta))
{
echo "No se pudo conectar correctamente con la Base de datos";
exit();
}

//Hacemos una consulta en la tabla producto
$result = mysql_query ("SELECT * FROM producte");

//Mostramos el contenido de la tabla producto
while ($row = mysql_fetch_array ($result)) {
echo 'Nombre: '.$row ['nom'].'<br />';
echo 'Descripción: '.$row ['descripcio'].'<br />';
echo 'Categoria: '.$row ['categoria'].'<br />';
echo 'Precio: '.$row ['preu'].'<br />';

# Mostramos la imagen

echo "<img src='$row[imatge]' ";//aqui mostramos la imagen
}

//Cierra la conexion con la base de datos
mysql_close();
?>
  #4 (permalink)  
Antiguo 04/06/2013, 15:14
 
Fecha de Ingreso: abril-2012
Mensajes: 106
Antigüedad: 12 años
Puntos: 2
Respuesta: Problema al mostrar una imagen formato BLOB

debo decir que debes crear una carpeta donde esta tu web nombrala "imagenes" y dentro de esa carpeta guarda las imagenes.
espero te sirva y comenta cualquier cosa
  #5 (permalink)  
Antiguo 04/06/2013, 16:35
Avatar de Nemutagk
Colaborador
 
Fecha de Ingreso: marzo-2004
Ubicación: México
Mensajes: 2.633
Antigüedad: 20 años
Puntos: 406
Respuesta: Problema al mostrar una imagen formato BLOB

Para comenzar...

a) no puedes usar la función header() después de hacer un echo()
b) no puedes imprimir una imagen junto con otros caracteres ya que esto generaría código corrupto, es como si abrieras un archivo de imagen y escribieras dentro de ella

c) NO PUEDES revivir temas tan viejos!!!!
__________________
Listo?, tendría que tener 60 puntos menos de IQ para considerarme listo!!!
-- Sheldon Cooper
http://twitter.com/nemutagk
PD: No contestaré temas vía mensaje personal =)

Etiquetas: blob, formato
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.
Respuesta




La zona horaria es GMT -6. Ahora son las 07:17.