PHP - Ver imagenes de la BD

 
Vista:

Ver imagenes de la BD

Publicado por kabugi (3 intervenciones) el 20/03/2007 14:24:41
Saludos a todos.
Tengo una BD con imágenes y las listo con esto:

<?php
include("dbconnect.inc.php");
$qry = "SELECT id, nombre, titulo, tipo, contenido FROM archivos";
$res = mysql_query($qry);
while($fila = mysql_fetch_array($res)){
echo $fila[titulo]."<br>".$fila[nombre]."<br>".$fila[tipo]."<br>";
echo "<a href = 'descargar_archivo.php?id=$fila[id]'>Descargar</a><br><br>";
}
?>

Para verlas utilizo esto:

<?php
$id = $_GET['id'];
include("dbconnect.inc.php");
$result = mysql_query("SELECT tipo, contenido FROM archivos WHERE id=$id");
$row = mysql_fetch_array($result);
$tipo = $row['tipo'];
header("Content-Type: $tipo");
$photo = $row['contenido'];
echo $photo;
?>

Hasta ahí todo bién, pero el problema es que necesito ver la imagen dentro de una tabla, y es cuan do tengo problemas. Sale un error diciendo que la "imagen contiene errores".
Creo que necesito un tag tipo <img src =..................>, pero no tengo ni idea de como, pues he probado a poner el nombre, un echo, etc y no me funciona.

Me podéis ayudar
Muchas Gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Ver imagenes de la BD

Publicado por Gonzalo (84 intervenciones) el 20/03/2007 15:56:54
Prueba
<img src="descargar_archivo.php?id=$fila[id]" />
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Ver imagenes de la BD

Publicado por kabugi (3 intervenciones) el 20/03/2007 18:53:44
Muchas gracias, pero no funciona. Tiene que existir un error en una de las páginas que me impide hacer ese tipo de llamada, pero no lo localizo.

Gracias por tu ayuda
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Ver imagenes de la BD

Publicado por AxelStone (9 intervenciones) el 22/03/2007 19:22:36
Pero para que las guardas en la base de datos??
es mas facil y mas rapido guardar la imagen en una carpeta del servidor
y en la base de datos solo guardar la ruta donde esta se encuentra
asi solo llamas a la imagen de esta forma

<img border="0" src="<?php echo mysql_result($noticia, $linea, 'foto_chica'); ?>" width="160" height="111">

es lo mas facil
aqui te dejo un codigo para guardar 10 imagenes enviadas desde un formulario
saludos

<?php

function F_gen_password($Paswd_Length){
// set ASCII range for random character generation
$lower_ascii_bound = 50; // "2"
$upper_ascii_bound = 122; // "z"
// Exclude special characters and some confusing alphanumerics
// o,O,0,I,1,l etc
$notuse = array (58,59,60,61,62,63,64,73,79,91,92,93,94,95,96,108, 111);
$i = 0;
$password = '';
while ($i < $Paswd_Length){
mt_srand((double)microtime() * 1000000);
// random limits within ASCII table
$randnum = mt_rand($lower_ascii_bound, $upper_ascii_bound);
if (!in_array($randnum, $notuse)){
$password = $password.chr($randnum);
$i++;
};
};
return $password;
} ;

$archivo = 'path/codigo.dat';
$fp = fopen($archivo,"r");
$codigo = fgets($fp, 26);
fclose($fp);

include("conexion.php");
$accion = $_POST["boton"];
echo "Procesando...";
echo "<br>";

//$archivo[2]=$_FILES['2']['tmp_name'];

for($indice=1;$indice<=10;$indice++) {
$archivo_foto=$_FILES[''.$indice]['tmp_name'];

$importacion_correcta = false;
if(isset($archivo_foto)and is_uploaded_file($archivo_foto)) {

// el archivo se ha subido correctamente
$cadena_aleatoria = F_gen_password(16);
$archivo_temp = "galeria/temp/".$cadena_aleatoria.".jpg";
$archivo_m = "galeria/m/".$cadena_aleatoria.".jpg";
$archivo_g = "galeria/g/".$cadena_aleatoria.".jpg";
if (move_uploaded_file($archivo_foto, $archivo_temp)){ //en servidor
// el archivo se ha movido a su sitio correctamente
$importacion_correcta = true;
}else{
$importacion_correcta = false;
$msg = "La imagen se ha subido correctamente pero no se ha podido mover.";
}
}else{
$importacion_correcta = false;
$msg = "El archivo no se ha podido subir.";
}

if ($importacion_correcta==true){
$msg = "La imagen se ha recibido sin problemas.";
// obtener medidas de la imagen
$perfil_imagen = GetImageSize($archivo_temp);
$ancho_px = $perfil_imagen[0];
$alto_px = $perfil_imagen[1];
if ($ancho_px>$alto_px) $size = "width"; else $size = "height";

// transformar la imagen en los tamaños que nos conviene
// y copiarlas en las carpetas respectivas
require_once "class.dropshadow.php";
chmod($archivo_temp,0777);

// crear miniatura y grabarla en imagenes/galeria/m/
$ds = new dropShadow(FALSE);
$ds->loadImage($archivo_temp);
if ($size=="width") $ds->resizetosize(120, 0); else $ds->resizetosize(0, 120);
$ds->saveFinal($archivo_m,'jpg', $quality = 40);

// crear ampliacion y grabarla en imagenes/galeria/g/
$ds = new dropShadow(FALSE);
$ds->loadImage($archivo_temp);
if ($size=="width") $ds->resizetosize(350, 0); else $ds->resizetosize(0, 350);
$ds->saveFinal($archivo_g,'jpg', $quality = 60);

// eliminar archivo temporal
@unlink($archivo_temp);
echo $msg;
echo "<br>";
// salir
mysql_query("INSERT INTO galeria_img (cod_galeria,foto_grande,foto_chica) VALUES ('$codigo','$archivo_g','$archivo_m')",$conexion);
}
}
if($accion=="Enviar y Finalizar") {
echo '<script>';
echo "window.location.href='lista_galeria.php'";
echo "</script>";
} else {


echo '<script>';
echo "window.location.href='ingresa_imagen_galeria.php'";
echo "</script>";
}
?>
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

el error es

Publicado por cesar (1 intervención) el 22/05/2007 17:55:42
El error es que cuando se usa la etiqueta scr. es para pedir variables y no para enviar a menos que antes haya una etiqueta <a href> por ello la pagina que muestra la imagen no recibe nada
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar