Hallo!
Ich bin am am verzweifeln. Das ist der Code:
Code:
<?php
error_reporting(E_ALL);
include_once("../src/settings.php");
/* XML-Daten abholen ($c = $_GET["c"]) */
$content = simplexml_load_file($c);
/* Banner */
$banner_attribute = $content->banner->attributes();
$banner_src = null;//Pfad
$banner_size = null;//aus getimagesize
/* Festlegen des Banner-Pfades */
if(isset($banner_attribute) && !empty($banner_attribute)) {
$banner_src = $banner_attribute["src"];
} else {
$banner_src = $homepage["std_banner_src"];
}
/* Das Ausgeben des IMG-Tags */
$banner_size = getimagesize($banner_src);
if(!in_array($banner_size["mime"], $homepage["bild_mime"])) {
echo "Der Banner dieser Seite hat ein ungültiges Datei-Format";
exit();
}
$out .= "Hallo!<div id=\"banner\">";
$out .= "<img src=\"$banner_src\" {$banner_size[3]} " .
" alt=\"{$banner_attribute['alt']}\" />";
$out .= "</div>";
?>
Wie hier gut zu sehen, ist $out die Variable, die die Ausgabe speichert.
Wenn ich jetzt $out mit echo ausgebe, also:
kriege ich das:
Code:
Hallo!<div id="banner"></div>
wenn ich jetzt aber schreibe
Code:
echo htmlspecialchars($out);
Dann kommt die gewünschte Ausgabe:
Code:
Hallo!<div id="banner">[img]img/banner.jpg[/img]</div>
WARUM?
Danke im Voraus
Sebastian
PS: Habe bei der letzten Ausgabe der Lesbarkeit willen die > und < usw ersetzt