Bilder in Tabelle schreiben
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
befehl
bild
darstellen
darstellung
datensatz
fetzen
folgende befehl
format
genauen befehle
header
host
http
image
komplette bild
ordner
platte belegen
probieren
stellen
string
tabelle
-
Hallo zusammen,
mich plagt follgendes Problem... ich m?chte in einer Tabelle ein Bild speichern, also nicht nur einen Link. Denn wenn das komplette Bild in der Datenbank sitzt, tr?gt es doch etwas eher der ?bersicht bei. Habe nun schon ?ber die Suchfunktion einen Thread gefunden, der dies behandelt - doch mir fehlen die genauen Befehle f?r die php-datei. Was ich bei dem Formular zum Upload beachten mu?, wei? ich.
W?re sch?n, wenn ihr mir einige Fetzen Source zur Verf?gung stellen k?nntet,
danke schonmal. -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Hallo,
Versuch einmal folgendes:
Aus Quelle von:
http://www.dynamic-webpages.de
<form action \"bild_update.php\" method=\"post\" enctype=\"multipart/form-data\">
<input type=file name=\\\"bild\\\">
<input type=\\\"submit\\\" name=\\\"insert\\\" value=\\\"Einf?gen\\\">
</form>
Als zweites muss das Bild mit dem skript \"bild_update.php\" in einen String umgewandelt und in das Datenbankfeld eingef?gt werden
if (isset($bild)) {
$fd = fopen($bild, \"r\");
$data = addslashes(fread($fd, filesize($bild)));
fclose($fd);
$size = getimagesize($bild);
$sql = \"INSERT INTO $tab_daten (format, width, height, bytes, image) VALUES (\'$bild_type\', $size[0], $size[1], $bild_size,\'$data\')\";
$result = mysql_query ($sql)
}
Um das Bild darstellen zu k?nnen ist ei kleiner Trick notwendig. Das h?ngt damit zusammen, das bei der Darstellung eines Bildes eine header-Variable mit dem Datenformat mitgegeben werden muss und der header der erste html-Befehl in einer Seite sein muss.
Der folgende Befehl wird in die normale Seite eingef?gt:
<IMG SRC=image.php?key=$key>
Das aufgerufene skript \"image.php\" ist:
<?php
mysql_connect (\"$host\", \"$user\", \"$pass\");
mysql_select_db(\"$db\");
$bildsql = \"SELECT format, image FROM table WHERE Id=$key\";
$bildres = mysql_query ($bildsql);
if ($bildres) {
if( $bildrow = mysql_fetch_row($bildres)) {
Header(\"Content-type: image/$bildrow[0]\");
echo $bildrow[1];
}
}
?>
Hoffe ich war hilfreich. -
Eine Frage habe ich noch,
wenn ich die Bilder normal in einem Ordner speichere:
Kann ich doch einfach bei einem Script, das einen Datensatz l?scht, auch das dazugeh?rige Bild l?schen lassen, wenn die id mit angegeben wurde, oder?
Somit m??te dann doch gew?hrleistet sein, das keine unbenutzten Bilder mehr die Platte belegen.. denke ich mal?! -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage