Ich habe eine Datenbankabfrage, die den HTML-Code für eine Seite zurückgibt, aber wenn ich sie auf meiner Seite verwende, wird sie als normaler Text angezeigt. . Wie würde ich es als HTML formatieren, so dass es die Tags und dergleichen verwendet.Rufen Sie HTML aus der Datenbank ab und formatieren Sie ihn als HTML anstelle von Nur-Text
Ein Beispiel dessen, was ich in meiner Datenbank haben:
<div class="test">SOME TEXT HERE</div>
Aber es ist auch so angezeigt. Ich möchte, dass der Text so formatiert wird, als wäre es HTML. So würde es nur an:
SOME TEXT HERE
aber, dass es auch in einem div mit der Klasse sein würde: "test"
Was ist der beste Ansatz wäre, dies zu erreichen, Tor?
Ich verwende Twig im MVC-Modell, um die Seite zu rendern. So ist die Seite Renderer ist wie diese
public function renderArticle() {
$twig = new TwigHelper();
$args['title'] = "Artikel $this->articleId";
$args['blogHTML'] = BlogController::retrieveBlogHTML($this->articleId);
echo $twig->render('article.twig', $args);
}
und die „BlogController :: retrieveBlogHTML“ geht so:
public static function retrieveBlogHTML($id) {
$db = DatabaseHelper::get();
$st = $db->prepare("SELECT PageHTML FROM T_Blog WHERE BlogId = :BlogId");
$st->execute([
':BlogId' => $id,
]);
if ($st->errorCode() !== \PDO::ERR_NONE) {
return null;
}
return $st->fetchAll();
}
Das bedeutet, dass ich nicht in der Lage sein, JavaScript zu diesem Zeitpunkt zu verwenden, Wenn das der einzige Weg ist, um das Problem zu beheben, muss ich einen Workaround erstellen.
Also ich weiß nicht, ob ich zufällig auch oder etwas in diese Richtung entfliehen, aber ich verwende keine Header.
Wie rufen Sie das div ab? Ajax? Server-Seitencode? – Max
Das ist wahrscheinlich eine Frage der Einstellung der richtigen Content-Header, oder vielleicht versehentlich aus dem HTML entkamen. Sie sollten wirklich mehr Details und etwas Code Ihres gegenwärtigen Prozesses geben. – GolezTrol
Es tut mir leid für meine späte Antwort, aber ich habe meine Hauptpost mit einigen weiteren Informationen darüber, wie ich die Daten abrufen, aktualisiert. –