Hallo,
Ich habe in einer mysql Tabelle den Namen von Bilddateien gespeichert.
In einem Authorensystem kann man nun mit folgender Eingabe ein Bild in eineme Artikel erstellen lassen:
[image left]dateiname.jpg[/image]
Die passenden Bilder werden über ein anderes Formularfeld (+ Textfeld für die Bildunterschrift) auf den Server hochgeladen und entsprechende Informationen in der DB gespeichert.
Die Formatierung des Textes für die spätere Ansicht auf der Webseite sieht folgendermasen aus:
Die Funktion bildunterschrift:
Das Resultat ist, dass das Bild angezeigt wird, die SQL Anfrage aber kein passendes Ergebnis liefert?!
Warum aber nur, denn der Eintrag in der DB ist genau gleich wie der Dateiname auf dem Server.
Wenn ich z.B. $dateiname im Querystring durch einen konkreten dateiname austausche (z.B. der Dateiname des Bildes das auch angezeigt wird) dann wird eine Bildunterschrift angezeigt.
Ich bin ratlos.
Ich habe in einer mysql Tabelle den Namen von Bilddateien gespeichert.
In einem Authorensystem kann man nun mit folgender Eingabe ein Bild in eineme Artikel erstellen lassen:
[image left]dateiname.jpg[/image]
Die passenden Bilder werden über ein anderes Formularfeld (+ Textfeld für die Bildunterschrift) auf den Server hochgeladen und entsprechende Informationen in der DB gespeichert.
Die Formatierung des Textes für die spätere Ansicht auf der Webseite sieht folgendermasen aus:
$text = eregi_replace("\[image left]([-_+./äöüÄÖÜa-zA-Z0-9!&%#?,'=:~]+)\[\/image]",bildunterschrift("\\1"),$text);
PHP-Code:
function bildunterschrift($dateiname) {
$query_bu = "SELECT Bildunterschrift FROM artikelbilder WHERE Bildurl = '".$dateiname."'";
$result_bu = mysql_query($query_bu)or die(mysql_error());
$bildunterschrift = mysql_fetch_array($result_bu);
$bildunterschrift = $bildunterschrift["Bildunterschrift"];
$bildanzeige = "<div style=\"float:left;margin-right:5px;background-color:#f2f2f2;border:1px solid #000\"><img src=\"http://www.cheat-lexikon.de/artikelbilder/".$dateiname."\" />
<em style=\"padding:2px\">".$bildunterschrift."[/i]</div>";
return $bildanzeige;
}
Warum aber nur, denn der Eintrag in der DB ist genau gleich wie der Dateiname auf dem Server.
Wenn ich z.B. $dateiname im Querystring durch einen konkreten dateiname austausche (z.B. der Dateiname des Bildes das auch angezeigt wird) dann wird eine Bildunterschrift angezeigt.
Ich bin ratlos.

Kommentar