Patrick Canterino: PHP mag XHTML nicht

Hallo Forumleser!

Könnte es sein, dass PHP mit XHTML nicht richtig zurecht kommt?
Ich habe nämlich eine XHTML-Datei angelegt und PHP-Code eingebettet. Wenn die PHP-Datei nun aufgerufen wird, wird im Browser eine Fehlermedlung angezeigt:

Parse error: parse error in d:\server\wwwroot\test.php on line 1

Und Zeile 1 der Datei lautet:

<?xml version="1.0" encoding="iso-8859-1" ?>

So wie ich das sehe, wird der PHP-Interpreter durch "<?xml..." verwirrt. Sehe ich das richtig?
Meine Frage jetzt: Lässt sich dieses Problem irgendwie umgehen, außer dass man vielleicht die komplette XHTML-Datei mit PHP schreiben lässt?

Viele Grüße

Patrick Canterino

  1. Hallo,

    d:\server\wwwroot\test.php on line 1

    Und Zeile 1 der Datei lautet:

    <?xml version="1.0" encoding="iso-8859-1" ?>

    So wie ich das sehe, wird der PHP-Interpreter durch "<?xml..." verwirrt. Sehe ich das richtig?
    Meine Frage jetzt: Lässt sich dieses Problem irgendwie umgehen, außer dass man vielleicht die komplette XHTML-Datei mit PHP schreiben lässt?

    Beginne das PHP-Script einfach mit:
    <?php
    print "<?xml version="1.0" encoding="iso-8859-1" ?>\n";
    ?>

    MfG, Thomas

    1. Hallo Thomas,

      Beginne das PHP-Script einfach mit:
      <?php
      print "<?xml version="1.0" encoding="iso-8859-1" ?>\n";
      ?>

      Gute Idee. Danke.

      Viele Grüße

      Patrick CAnterino

  2. Hi.

    So wie ich das sehe, wird der PHP-Interpreter durch "<?xml..." verwirrt. Sehe ich das richtig?
    Meine Frage jetzt: Lässt sich dieses Problem irgendwie umgehen, außer dass man vielleicht die komplette XHTML-Datei mit PHP schreiben lässt?

    dein PHP laeuft mit der Option "short_tags_enable=yes" D.h. du kannst den "PHP Modus" in einer Seite mit <? beginnenn statt mit <?php . das verwirrt ihn natuerlich.

    Jan
    --

    1. Hallo Jan,

      dein PHP laeuft mit der Option "short_tags_enable=yes" D.h. du kannst den "PHP Modus" in einer Seite mit <? beginnenn statt mit <?php . das verwirrt ihn natuerlich.

      Aha. Und wie kann ich das abschalten?

      Viele Grüße

      Patrick Canterino

      1. Hallo, Patrick!

        dein PHP laeuft mit der Option "short_tags_enable=yes" D.h. du kannst den "PHP Modus" in einer Seite mit <? beginnenn statt mit <?php . das verwirrt ihn natuerlich.

        Aha. Und wie kann ich das abschalten?

        Vorausgesetzt Du kommst überhaupt an die Konfigurationsdateien heran (es handelt sich z.B. um einen lokalen Server): Suche in der Datei php.ini, welche auf Windows-Systemen unter c:\windows\ zu finden ist, nach oben genannter Einstellung (short_tags_enable=yes) und ändere sie in "short_tags_enable=no".

        Wenn Du Deine Seiten bei einem Webhoster liegen hast, deren PHP-Einstellungen kurze processing instructions (<? ... ?>) erlauben, kannst Du meist wenig tun; ich denke nicht, dass der Hoster es auf Deinen Wunsch ändern wird, da viele mit den kurzen PIs arbeiten.

        Mathias

        1. Hallo Mathias,

          Vorausgesetzt Du kommst überhaupt an die Konfigurationsdateien heran (es handelt sich z.B. um einen lokalen Server): Suche in der Datei php.ini, welche auf Windows-Systemen unter c:\windows\ zu finden ist, nach oben genannter Einstellung (short_tags_enable=yes) und ändere sie in "short_tags_enable=no".

          Also ich verwende einen lokalen Server. Ich habe aber "short_tags_enable" nicht gefunden. Dafür bin ich auf etwas namens "short_open_tag" gestoßen. Bei dem, was da dabei steht, könnte es dasselbe bedeuten.

          Viele Grüße

          Patrick Canterino