PHP Forum

PHP Forum (http://www.selfphp.de/forum/index.php)
-   PHP für Fortgeschrittene und Experten (http://www.selfphp.de/forum/forumdisplay.php?f=13)
-   -   bildausgabe aus datenbank (http://www.selfphp.de/forum/showthread.php?t=14104)

Shadowman 27.07.2006 21:51:03

bildausgabe aus datenbank
 
also...ich habe das problem, dass ich die daten aus einem spiel (welches alles in einer mysql datenbank speichert) auslesen und auch ausgeben. es werden bilder in der datenbank gespeichert, was im format blob gemacht wird. es dürften eigentlich bmp's sein, aber ich habe absolut keine ahnung, wie ich diese dann auf einer seite ausgeben lassen kann...

am angenehmsten wäre es, wenn ich eine datei machen würde, die logo.php heißt und mit einer variable (z.B. data) eine id übergeben bekommt, dessen bild angezeigt werden soll

wenn es sowas schon gibt oder es jemanden gibt, der mit einen passenden code sagen könnte, wäre ich sehr dankbar

Mfg Sven

alexwess 27.07.2006 23:53:04

AW: bildausgabe aus datenbank
 
ich halte zwar nichts von BLOB aber versich es mal so:

<?
if(isset($_GET['id'])) {

//MySQL Verbindung hier einfügen

$result = mysql_query("SELECT bild,filetype FROM Bilder WHERE ID = '". $_GET['id']." '");
$row = mysql_fetch_object($result);

Header( "Content-type: $row->filetype");
echo $row->bild;
}
?>

Shadowman 28.07.2006 00:40:34

AW: bildausgabe aus datenbank
 
leider funktioniert das absolut nicht...

<?
include('../admin/config_game.php');
if(isset($_REQUEST['data'])) {

$result = mysql_query("SELECT emblem_data FROM guild WHERE guild_id = '".$_REQUEST['data']."'");
$row = mysql_fetch_object($result);

Header( "Content-type: png");
echo $row->emblem_data;
}
?>

habs versucht aber da kam kommt nur ein fenster, dass man etwas downloaden kann und dann lädt man eine datei runter, die so groß ist, wie das bild sein soll...aber das bild soll auf dieser seite ausgegeben werden

xabbuh 28.07.2006 08:03:40

AW: bildausgabe aus datenbank
 
Der korrekte Mime-Type für png-Bilder ist image/png.

Nachtrag: bmp-Bilder sind für das Web völlig ungeeignet.

Sieh dir auch gleich mal diese Seite an:
16.3. Ist es sinnvoll, Bilder in einer Datenbank abzulegen?
http://www.php-faq.de/q/q-db-blob.html

Shadowman 28.07.2006 11:58:54

AW: bildausgabe aus datenbank
 
habe ich sofort geändert...hätte ich auch selbst drauf kommen können...hat mich aber nicht viel weiter gebracht...nur so weit, dass ich den quellcode vom bild im iex angezeigt bekomme

xabbuh 28.07.2006 12:12:54

AW: bildausgabe aus datenbank
 
Zeige mal deinen aktuellen Quellcode und liefer am besten auch noch einen Link zur entsprechenden Seite mit.

Shadowman 28.07.2006 12:57:27

AW: bildausgabe aus datenbank
 
http://www.mavero.de/test/cp/logo.php?data=10004

<?
include('../admin/config_game.php');
if(isset($_REQUEST['data'])) {

$result = mysql_query("SELECT emblem_data FROM guild WHERE guild_id = '".$_REQUEST['data']."'");
$row = mysql_fetch_object($result);

Header( "Content-type: image/png");
echo $row->emblem_data;
}
?>

xabbuh 28.07.2006 13:22:15

AW: bildausgabe aus datenbank
 
Dann erhalte ich folgende Ausgabe:
Zitat:

Die Grafik "http://www.mavero.de/test/cp/logo.php?data=10004" kann nicht angezeigt werden, weil sie Fehler enthält.
Du solltest dir die Seite nochmal ohne den Content-Type-Header ansehehn und dabei error_reporting auf E_ALL stellen, um zu prüfen, was PHP dir mitteilen möchte.

Shadowman 28.07.2006 14:33:50

AW: bildausgabe aus datenbank
 
ich hab den header mal kommentiert und dann kam bei mir folgendes:

789ccd543d4ec5300c0e0b0b1b13ead4915ee0a9a3c5d289b96ba55ea047c85132bc83 f4200c3d02130b43f96cf73979a57fa0878495446d6c7ffe6c277979fdb8772227cc67 cca769dec9ea5c0ffde383ce3f90aeebdab6adebbaaaaab22c8ba2c8b26ccd182a18c0 0cc6708123dc6fcb6714b1eff4c354233e37c7cc373a8ed72a371ee7b3ba5e22bacdfa 7ccfe5d738bb7c1613f969bf1487c8fbd0fb61e011065519ce6e238c0cdcdf3fc774e8 7ecc6b0f012e10ace403359e7cafa550a8237929025729274e0d2032f85776521cbb17 62d9b025352988726077116889c862ade1682c54d58e25d2b1e85136f9988191e11ef5 03f0b1e3bd8f3697d456718479c4f14cec1cc21588083ab88d8383a29d95e210271b43 4c34c073d6af051cb1519cb42400a17cc2e434f7f8f46f8c833541e0d2731f858c1d9e 451c5c3ddd413528cf2308a7e6a7f390a37bc140d2fb357b57dd6199ddd35bbdcfffea 9dff02ecb0d431

error_reporting kann ich leider net umstellen, weil ich nicht der server admin bin und der kein plan hat, wie er das macht

Shadowman 28.07.2006 14:44:07

AW: bildausgabe aus datenbank
 
also...nach ein paar veränderungen habe ich ein schwarzes bild hin bekommen, welches aber mit der information($row->emblem_data), die ich oben geschrieben habe gespeist werden soll und anhand dessen informationen ein bild erstellen soll...

<?
include('../admin/config_game.php');
if(isset($_REQUEST['data'])) {

$result = mysql_query("SELECT emblem_data FROM guild WHERE guild_id = '".$_REQUEST['data']."'");
$row = mysql_fetch_object($result);

//echo $row->emblem_data;
$image = imagecreate(24,24);
$farbe_body=imagecolorallocate($image,0,0,0);
header("Content-Type: image/gif");
imagegif($image);
}
?>


Alle Zeitangaben in WEZ +2. Es ist jetzt 19:21:20 Uhr.

Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.