Frage

XML Parsing Error: no element found
Location: http://localhost/rss/
Line Number 1, Column 1:

Allerdings, wenn ich fügen Sie den XML-Code in http://validator.w3.org/feed /check.cgi , sagen, es ist keine Formatierungsfehler.

FULL CODE bei unter:

index.php

<?php
    header("Content-Type: application/xml; charset=ISO-8859-1");


$details = '<?xml version="1.0" encoding="ISO-8859-1" ?>
            <rss version="2.0">
                <channel>
                            <title>hehe</title>
                            <link>http://www.google.com</link>
                            <description>gaga</description>
                </channel>
            </rss>
            ';
echo $details;

?>
War es hilfreich?

Lösung

Stellen Sie sicher, dass Sie nicht eine verirrte BOM am Anfang Ihrer PHP-Datei bekommen haben. Einige (dumm, gebrochen) Editoren unter Windows wird eine UTF-8-kodierten BOM auf den Anfang einer Datei fallen, wenn sie als UTF-8 zu speichern. Das ist sinnlos und unerwünscht (als UTF-8 nicht Byte-Reihenfolge Probleme haben) (wie es die Kompatibilität mit byteorientierte Verarbeitungstool brechen).

Da Sie Ihre Ausgabe als ISO-8859-1, jeder UTF-8-kodierten BOM zu Beginn dienen wird die 8859-1-Sequenz . Für XML wäre dies außerhalb des Root-Element Nicht-Leerzeichen Daten sein, was nicht erlaubt ist.

Wenn das ist, was passiert, es beheben, indem Sie Ihre PHP-Datei als ‚westlich‘ (cp1252) Codierung zu speichern, oder einen ‚UTF-8 ohne BOM‘ Codierung unter speichern.

Andere Tipps

Wer den Parsing-Fehler meldet? Ich habe den Code auf meinem Rechner und es funktionierte wie erwartet. Firefox gebeten, den Feed zu abonnieren.

Sie haben wirklich vorsichtig sein, um sicherzustellen, dass keine Zeilenumbrüche oder Leerraum vor der XML-Deklaration sind. Selbst ein einziger Zeilenumbruch zu Problemen führen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top