• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

XHTML in PHP-Datei

Drang

Neues Mitglied
servus,
hab hier schon nach meinem Problem gesucht aber halt nur den umgekehrten Fall gefunden, das PHP in einer XHMTL-Datei nicht funktioniert.

Also mein Fall ist folgender:
Ich verwende .php Dateien und will in dieser XHTML nutzen.
Nun ist es ja so, wenn ich eine XHTML-Datei hätte und in diesen einen offensichtlichen Fehler einbaue (z.B. ein fehlender End-Tag), das dann eine Fehlermeldung kommt.
Dies passiert aber eben nicht wenn ich .php nutze. Da wird jeglicher Fehler ignoriert.

Der Anfang meiner Dateien sieht so aus:

HTML:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xml:lang="de" lang="de" xmlns="http://www.w3.org/1999/xhtml">

Also müsste der das doch als XHTML erkennen?

Vielleicht kann da mir jemand mal Aufschluss geben.

Drang
 
totaler blödsinn, PHP ist nicht von HTML abhänging.
seitenendungen müssen .php lauten, alles andere ist in dem fall unwichtig.

Nils aka XraYSoLo
 
php-Dateien müssen nicht auf .php enden. Sie können durchaus auch .html heißen - wichtig ist nur, dass der Webserver den php-Parser dann auch drüber jagd, was immer nur eine Frage der Einstellung ist.

XHTML-Strict kann durchaus einen php-Fehler verursachen, nämlich wenn man den xml-Prolog an den Anfang der Seite stellt. Der php-Parser denkt in dem Moment es wäre ein php-Code weil dieser mit <? beginnt - kann man aber dank echo-Ausgabe auch umgehen.

Andere Fehler im HTML-Code sollten keine php-Fehler verursachen, kommt aber auf den Einzelfall an (z.B. bei Ausgabe des HTML-Codes über echo und vergessenem Anführungszeichen oder ähnlich). Da wäre ein konkretes Beispiel gut.
 
php-Dateien müssen nicht auf .php enden. Sie können durchaus auch .html heißen - wichtig ist nur, dass der Webserver den php-Parser dann auch drüber jagd, was immer nur eine Frage der Einstellung ist.

ich bin ja auch vom normalfall ausgegangen, um ihn nicht unnötig zu verwirren.

Nils aka XraYSoLo
 
XraYSoLo schrieb:
aber nicht von mir ^^
Ne, ist auch nicht so wichtig! Die Bewertungen interessieren mich auch nicht, sind aber ab und an unterhaltsam! :)

back2topic

threadi schrieb:
XHTML-Strict kann durchaus einen php-Fehler verursachen, nämlich wenn man den xml-Prolog an den Anfang der Seite stellt. Der php-Parser denkt in dem Moment es wäre ein php-Code weil dieser mit <? beginnt - kann man aber dank echo-Ausgabe auch umgehen.
Japp,

aber ich habe ihn so verstanden, dass er Fehlermeldungen vom Browser über sein XHTML haben möchte!
Nun ist es ja so, wenn ich eine XHTML-Datei hätte und in diesen einen offensichtlichen Fehler einbaue (z.B. ein fehlender End-Tag), das dann eine Fehlermeldung kommt.
Z.B. so einen
selfhtml.org schrieb:
Wenn Sie in HTML die Elemente html, head und body weglassen, jedoch das Element title und ansonsten gültiges HTML notieren, dann ist es aus Sicht von HTML ein fehlerfreies und vollständiges Dokument. In XHTML besteht diese Freiheit nicht. Hier muss eine HTML-Datei zwingend das übliche Grundgerüst einhalten und ein head- und ein body-Element enthalten.

Ich kenne mich mit XHTML nicht aus, aber dachte eigentlich bislang, dass dort auch keine Fehlermeldungen ausgegeben werden, zumindest nicht vom Browser.
 
Nun ist es ja so, wenn ich eine XHTML-Datei hätte und in diesen einen offensichtlichen Fehler einbaue (z.B. ein fehlender End-Tag), das dann eine Fehlermeldung kommt.
Dies passiert aber eben nicht wenn ich .php nutze. Da wird jeglicher Fehler ignoriert.
Das ist unmöglich. Wenn Du bei den Fehlermeldungen von einem HTML-Validator sprichst.

Denn der Validator ist, wie auch jeder Browser und jede Suchmaschine, nur ein Client, und Clients interessieren sich nicht für Dateiendungen und wissen auch nicht, was serverseitig abläuft. Weder Dein Browser noch der Validator können etwas mit PHP anfangen, sie sehen keinen PHP-Code und sie interessiert die Dateiendung auch nicht wirklich.

Dein Problem ist womöglich ganz anders gelagert. Du solltest es nochmal genau definieren und ggfs. einen Link zur Seite mitgeben. Auch solltest Du beschreiben, von welcher Art Fehlern Du sprichst, ob es um den Validator geht oder was Du meinst.

Grüße,
-Efchen
 
Es wäre gut wenn du die Fehlermelung mal postest. Was mir einfällt, woran php sich immer ein bisschen problematisch zeigt ist an diesem hier:

Code:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de" lang="de">
da sollte man dann wohl besser:
Code:
<?php
echo "<?xml version=\"1.0\" encoding=\"UTF-8\"?>";
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de" lang="de">
schreiben ^^


Grüßli zu morgen
Loon3y


Edit: irks, da geht man mal Kaffee holen, vergisst senden zu drücken und schon mogelt sich Efchen vor :P *grinz*
 
ok neuer Versuch das zu erklären

Also erstmal ist das PHP kein Problem..es funktioniert einfach.

So, das eigendliche Problem ist:

Ich habe eine .xhtml Datei. Habe einen groben Fehler drin: z.B. </font> vergessen. So, nun gibt der Browser eine Fehlermeldung das er in irgendeiner Zeile was erwartet, aber eben nicht findet. Prima, so soll es sein.

Wenn ich aber die selbe Datei nun als .php abspeicher und sie dann aufrufe, hat der Browser nix zu meckern. Aber genau das will ich doch, das der mir die Fehlermeldung gibt.
So kann es passieren das ich aus XHTML-Sicht grobe Schnitzer einbaue, ohne das ich die bemerke und irgendwann mal das zum Problem wird.

So, hoffe ich habs nun verständlicher ausgedruckt. Vielen Dank schon mal für die Antworten bisher

Drang
 
Ich habe eine .xhtml Datei. Habe einen groben Fehler drin: z.B. </font> vergessen.

</font>...was ist das? Das gibt es nicht!

@rest
wie schon erwähnt, hochladen, screenshot oder quelltext posten....aus deiner Erklärung wird man wenig schlau..zumindest ich nicht. :-(

So kann es passieren das ich aus XHTML-Sicht grobe Schnitzer einbaue, ohne das ich die bemerke und irgendwann mal das zum Problem wird.

Definiere grobe Schnitzer? alles was du falsch auszeichnest bemängelt dir der Validator. The W3C Markup Validation Service


Gruß
Loon3y
 
Ich habe eine .xhtml Datei. Habe einen groben Fehler drin: z.B. </font> vergessen. So, nun gibt der Browser eine Fehlermeldung das er in irgendeiner Zeile was erwartet, aber eben nicht findet. Prima, so soll es sein.
Ich habe bisher noch keinen Browser erlebt, der bei der Anzeige von Webseiten Fehler im (X)HTML-Code ausgibt. Wovon sprichst Du?

So, hoffe ich habs nun verständlicher ausgedruckt.
Nein, sorry.
 
Zurück
Oben