Yahoo Clever wird am 4. Mai 2021 (Eastern Time, Zeitzone US-Ostküste) eingestellt. Ab dem 20. April 2021 (Eastern Time) ist die Website von Yahoo Clever nur noch im reinen Lesemodus verfügbar. Andere Yahoo Produkte oder Dienste oder Ihr Yahoo Account sind von diesen Änderungen nicht betroffen. Auf dieser Hilfeseite finden Sie weitere Informationen zur Einstellung von Yahoo Clever und dazu, wie Sie Ihre Daten herunterladen.

¿MySQL y PHP, Mostrar imagenes descargadas de la Base de Datos?

Bueno ya encontré como subir archivos a la Base de Datos (DB) y los sube y todo bonito.

http://www.php-mysql-tutorial.com/php-mysql-upload...

A hora si son imágenes que $%&$@$" hago por que no puedo hacer que me muestre la imagen, me muestra el binario de la imagen.

Vamos a dejarlo o limitarlo a un formato .gif, jpg lo que quieran.

A qui estan los datos de mi DB:

Tabla se llama upload

id int(11) NoNull Primaria auto increment

name varchar(30) NoNull

type varchar(30) NoNull

size int(11) NoNull

content mediumblob NoNull

Supongan que le dan clic a la primera liga y los manda a la imagen, yo necesito que me muestre la imagen, no que me pregunte donde guardarla.

Update:

Codigo para Sacar los datos de la BD

if(isset($_GET['id']))

{

include 'library/config.php';

include 'library/opendb.php';

$id = $_GET['id'];

$query = "SELECT name, type, size, content FROM upload WHERE id = '$id'";

$result = mysql_query($query) or die('Error, query failed 2');

list($name, $type, $size, $content) = mysql_fetch_array($result);

header("Content-Disposition: attachment; filename=$name");

header("Content-length: $size");

header("Content-type: $type");

echo $content;

include 'library/closedb.php';

exit;

}

Update 2:

Como le hago para que me muestre la imagen ?

1 Antwort

Bewertung
  • Anonym
    vor 1 Jahrzehnt
    Beste Antwort

    Aqui tienes un ejemplo. Tienes que usar un header (Content-type)

    y para mostrarla en una pagina web

    <img src="nombre_archivo.php?id=8">

    <?php

    // 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

    $id = (isset($_GET["id"])) ? $_GET["id"] : 1;

    // Escojemos la foto real o la miniatura según la variable $tam

    $campo = "foto";

    $DBHOST="localhost";

    $DBUSER="root";

    $DBPASSWORD="";

    $DBNAME="basededatos";

    // Recuperamos la foto de la tabla

    $sql = "SELECT $campo

    FROM tabla

    WHERE id =". $id;

    # 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 = "image/gif";

    // Gracias a esta cabecera, podemos ver la imagen

    // que acabamos de recuperar del campo blob

    header("Content-Type: $mime");

    // Muestra la imagen

    echo $imagen;

    ?>

Haben Sie noch Fragen? Jetzt beantworten lassen.