Du musst Dir eine Datei schreiben, in der Du die DB wieder abfragst.
Dann kannst Du via echo Befehl einfach das img ausgeben.
bsp
echo "<img src=\"$data[image]\" />";
Ich hab ein Script mit dem ich über einen Datei Upload den NAme des Bildes in die SQL Datenbank schreiben kann und zugleich das Bild auf den Server lade...
nur wie bekomme ich jetzt diese beiden Daten wieder zusammen um das Bild anzuzeigen....
in der Datenbank ist das Bild zB. unter Test.jpg gespeichert.... unter dem gleichen NAmen liegt es auf dem Server im Verzeichniss xyz.
soweit ich weiß soll es dafür einen einfachen Befehl geben.
auch Ich bin einer der PHP - Anfänger aber bin recht begeistert und für jede Hilfe dabkbar.
![]()
![]()
![]()
hier einfach mal das Script vielleicht hilft es meine Frage ein wenig klarer zu stellen.
<html>
<head>
<title>upload</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<h2>Datei-Upload</h2>
<form action="<? echo $_SERVER['PHP_SELF'];?>"
method="post" enctype="multipart/form-data">
Bild hochladen<br>
<input type="hidden" name="MAX_FILE_SIZE" value="90240">
<input type="file" name="dateiname">
<hr>
Kommentar zum Bild <br>
<br>
<textarea name="kommentar" cols="30" rows="5" id="kommentar"></textarea>
<input type="text" name="datum" value="<? echo date("Y-m-d H:i:s")?>">
<br>
<br>
<input type="hidden" name="abschicken" value="1">
<input type="submit" value="Übertragen">
</form>
<hr>
<?php
// Abfrage, ob Formular abgeschickt worden ist
// wenn ja, dann Definition der Upload-Variablen
if (isset($_POST["abschicken"])) {
$dateiname = $_FILES['dateiname']['name'];
$tmp_name = $_FILES['dateiname']['tmp_name'];
$kommentar = isset($_POST['kommentar']) ? $_POST['kommentar'] : '';
$datum = isset($_POST['datum']) ? $_POST['datum'] : '';
if (!isset($dateiname)) {exit;}
// Definition unterschiedlicher Fehlermeldungen
if(!is_uploaded_file($tmp_name)) {
echo 'Fehler!<br><ul>';
switch ($_FILES['dateiname']['error']) {
case 1: echo "<li>Die Datei überschreitet die
maximale Größe von 2 Megabytes.";
break;
case 2: echo "<li>Die Datei überschreitet die
maximale Größe von $_POST[MAX_FILE_SIZE] Bytes.";
break;
case 3: echo "<li>Die Datei wurde nur
teilweise übertragen.";
break;
case 4: echo "<li>Sie haben vergessen,
die zu überspielende Datei anzugeben.";
break;
}
echo "</li></ul>";
exit;
}
// Festlegen des Pfades mit Dateinamen.
$uploadname ="img/$dateiname";
move_uploaded_file($tmp_name,$uploadname);
// Ausgabe auf dem Bildschirm zur Bestätigung.
printf("Die Datei <b>%s</b> befindet sich auf dem Webserver im Ordner
<b>%s</b>!<br>\n",
$_FILES['dateiname']['name'], $uploadname);
printf("Sie ist <b>%s Bytes</b> groß und vom Typ <b>%s</b>.
<br>\n", $_FILES['dateiname']['size'],
$_FILES['dateiname']['type']);
// Einfügen eines Datensatzes zum Bild in Datenbank
// Verbindung zur Datenbank
$server = "localhost"; $user = "root"; $pass = "tricksiebzehn";
$database = "db";
$verbindung = @mysql_connect($server,$user,$pass)
or die ("Keine Verbindung möglich");
mysql_select_db($database, $verbindung)
or die ("SQL-Fehler = ".mysql_error());
// Einfügen des Datensatzes
$sql = "insert into picture (kommentar,dateiname,datum)
Values ('$kommentar','$dateiname','$datum')"
or die ("SQL-Fehler = ".mysql_error());
$rs = mysql_query($sql);
mysql_close($verbindung);
}
?>
</body>
</html>
Du musst Dir eine Datei schreiben, in der Du die DB wieder abfragst.
Dann kannst Du via echo Befehl einfach das img ausgeben.
bsp
echo "<img src=\"$data[image]\" />";
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)