Kann mir bitte jemand helfen, herauszufinden, was ich falsch in dem unten angegebenen Code getan habe.Fehler beim Parsen von HTML-Inhalten mit DOMDocument von PHP
Ich habe eine PHP-Variable news_content dessen benannten Wert ist die folgende html ...
<p><img src="./images/image1.jpeg" alt=""></p>
Dieser Wert für variable news_content aus einer Datenbankabfrage erhalten wird.
Die Funktion erstellt unten, um ein DOMDocument Objekt die Variable news_content mit:
public function convert_to_tinymce_data($news_content)
{
$dom=new DOMDocument();
$dom->loadHTML($news_content);
$img_nodes=$dom->getElementsByTagName('img');
foreach($img_nodes as $link)
{
$img_link=$link->getAttribute('src');
echo $link->getAttribute('src');
}
}
Aber nichts hallte (eine leere Seite empfangen) wird.
Haben Sie Fehlerberichte aktiviert? ('error_reporting (E_ALL); ini_set ('display_errors', 1);' oben im Skript); Wahrscheinlich ist Ihre HTML-Zeichenfolge leer. Andernfalls müssen Sie den HTML-Code posten. Mit korrektem HTML funktioniert das obige Skript. – fusion3k
Wenn ich die HTML-Zeichenfolge direkt zuweisen, d. H. $ News_content = '
'; , dann Code funktioniert. Aber wenn es aus einer Datenbank abgerufen wird (wo es als Textdatentyp gespeichert wird) und dann in der Variablen ($ news_content) gespeichert wird, funktioniert es nicht, obwohl DOMDocument-Objekt erstellt wird (überprüft es mit " echo $ dom-> saveHTML() "). Und ja, ich habe überprüft, dass die Variable $ news_content nicht leer ist.Bitte irgendwelche Ideen.Vielen Dank – stackoverflownewbieNein. Können Sie Post nach dem Hinzufügen von HTML aus der Datenbank bearbeiten? (wenn möglich, kopieren und einfügen direkt von phpMyAdmin Bearbeitungsformular) – fusion3k