Ver Mensaje Individual
  #1 (permalink)  
Antiguo 24/08/2011, 06:03
Choochex
 
Fecha de Ingreso: agosto-2011
Mensajes: 18
Antigüedad: 12 años, 8 meses
Puntos: 0
Pregunta Mostrar imagenes desde un campo de blob SQL

Hola, alguien me puede decir donde encuentro un buen tutorial de como mostrar una imagen desde blob mysql usando PHP??

Bueno en realidad encontré uno muy bueno, nada mas que no me funciona, no se donde estará el error. A ver si alguien es tan amable y me ayuda...


Código:
<body>
<img src="verblob.php?idfoto=1&tam=1" alt="Imagen desde Blob" />
<?php
//Autor: Braulio Andrés Soncco Pimentel <[email protected]>
//http://www.buayacorp.com/

	// Nivel de errores
	error_reporting(E_ALL);

	// Constantes
	# Servidor de base de datos
	define("DBHOST", "localhost");
	# nombre de la base de datos
	define("DBNAME", "Base de datos");
	# Usuario de base de datos
	define("DBUSER", "root");
	# Password de base de datos
	define("DBPASSWORD", "Password");
	
	// Parámetros para recuperar la imagen
	# Recuperamos el parámetro GET con el id único de la foto que queremos mostrar
	$idfoto = (isset($_GET["idfoto"])) ? $_GET["idfoto"] : exit();
	# Recuperamos el parámetro GET para elegir entre la miniatura o la foto real
	$tam = (isset($_GET["tam"])) ? $_GET["tam"] : 1;
	
	// Escojemos la foto real o la miniatura según la variable $tam
	switch($tam) {
		case "1":
			$campo = "foto";break;;
		case "2":
			$campo = "thumb";break;;
		default:
			$campo = "foto";break;;
	}
	

	// Recuperamos la foto de la tabla
	$sql = "SELECT $campo, mime
			FROM imagenes 
			WHERE idfoto = $idfoto";
		
	# Conexión a la base de datos
	$link = mysql_connect(DBHOST, DBUSER, DBPASSWORD) or die(mysql_error($link));;
	mysql_select_db(DBNAME, $link) or die(mysql_error($link));
	
	$conn = mysql_query($sql, $link) or die(mysql_error($link));
	$datos = mysql_fetch_array($conn);
	
	// La imagen
	$imagen = $datos[0];
	// El mime type de la imagen
	$mime = $datos[1];
	
	// Gracias a esta cabecera, podemos ver la imagen 
	// que acabamos de recuperar del campo blob
	header("Content-Type: $mime");
	// Muestra la imagen
	echo $imagen;	

?>

</body>

Y en la base de datos tengo esto:
Código:
CREATE TABLE `tabla` (

  `idfoto` int(3) NOT NULL AUTO_INCREMENT,

  `nombre` varchar(255) NOT NULL DEFAULT '',

  `foto` blob NOT NULL,

  `thumb` blob NOT NULL,

  `mime` varchar(40) NOT NULL DEFAULT '',

  PRIMARY KEY  (`idfoto`)

) ;
Cita:
Gracias...