title image


Smiley Re: HTML-Validator-Warnung
> erst alles, was HTML ist, validieren, dann php einbauen und gucken, ob es noch

> funktioniert.



Du denkst da ein bißchen umständlich, glaube ich.



Sagen wir, du hast die Datei test.php auf deiner Festplatte, die ein HTML-Grundgerüst und eine simple PHP-Ausgabe enthält:



+-c:\webdesign\test.php-------------------------+

| |

| <html> |

| <head><title>Test</title></head> |

| <body> |

| <p><?php echo "Test!"; ?></p> |

| </body> |

| </html> |

| |

+-----------------------------------------------+





Wenn du die dem Validator übermittelst, liest dein Browser ihren Inhalt und schickt diesen dann an das Validatorprogramm beim W3C:





+---------------+ +-------------------+

| Dein Computer | | Validatorprogramm |

| | | am W3C-Server |

| test.php ------------------------------> |

+---------------+ . +-------------------+

.

+---------------------------------------------+

|<html> |

| <head><title>Test</title></head> |

| <body> |

| <p><?php echo "Test!"; ?></p> |

| </body> |

|</html> |

+---------------------------------------------+





An keiner Stelle wird PHP verarbeitet. Chancenlos. Du schickst dem HTML-Validator hier bereits PHP-Code; genausogut könntest du ihn bitten, ein C++-Programm, eine Word-Datei, ein JPEG-Bild oder ein MP3-Lied zu validieren.



Du kannst, wenn du das Programm PHP auf deinem Computer installiert hast, die PHP-Datei vorher verarbeiten lassen. PHP versteht, was <?php echo "Test!"; ?> bedeutet, und wandelt den Aufruf entsprechend um. Standardmäßig liefert PHP einfach nur den generierten Text zurück, den man automatisiert in HTML-Dateien umleiten kann - klingt wirklich komplizierter, als es ist. Siehe Fatbulls Anleitung.



Egal, jedenfalls sieht die Sache dann so aus:



+---------------+ +-------------------+

| Dein Computer | | Validatorprogramm |

| | +--------> am W3C-Server |

| test.php | | +-------------------+

| | | |

|php.exe <-+ | |

| | | |

| v | |

| test.html ----------------------+

| | .

+---------------+ .

.

+---------------------------------------------+

|<html> |

| <head><title>Test</title></head> |

| <body> |

| <p>Test!</p> |

| </body> |

|</html> |

+---------------------------------------------+



Das ist jetzt echter HTML-Code (na schön, ohne Dokumenttyp und Zeichensatz, aber du weißt, was ich meine :)). Den kann der Validator ordnungsgemäß verarbeiten.





> Bei Test über URL --> keine Probleme.



Ja, denn dann gibst du ja nur einen fremden Server an, der seinerseits die fertig in HTML umgewandelte PHP-Page an den Validator übermittelt.





+---------------+ +-------------------+

| Dein Computer | | Validatorprogramm |

| | | am W3C-Server |

| -----------------------------> | ^ |

+---------------+ . +-------------|--|--+

. | |

"http://www.irgendeine.seite/hallo.php" | |

| |

+---------------------------+ |

v |

+------------------------------+ |

| irgendeine-seite | +---------------------------------------------+

| | |<html> |

| hallo.php | | <head><title>Hit</title></head> |

| . | +------------>| <body> |

| . +-> php.exe --+ | | <p>Hallo!</p> |

+----.-------------------------+ | </body> |

. |</html> |

. +---------------------------------------------+

+------------------------------------------------+

|<html> |

| <head><title>Hi</title></head> |

| <body> |

| <p><?php echo "Hallo!"; ?></p> |

| </body> |

|</html> |

+------------------------------------------------+



Du siehst: Auch hier bekommt der Validator den eigentlichen PHP-Code nicht zu Gesicht. Er fordert von irgendeine.seite "hallo.php" an, woraufhin der irgendeine.seite-Server bei sich auf der Festplatte "hallo.php" liest (beispielsweise; niemand sagt, daß überhaupt Dateien im Spiel sein müssen!), den Inhalt an seinen PHP-Interpreter schickt, und den vom PHP-Interpreter generierten Code an den Validator übermittelt.



(Der Validator ist hier für dich der Server und für irgendeine.seite der Client.)



> Und das style im head muss mit php deklariert sein.



Was du damit meinst, weiß ich nicht. Wie gesagt, du mußt den Validator wie einen Browser betrachten. Wenn du eine Datei c:\webdesign\test.php in deinem Browser lädst, hat dieser mit den PHP-Tags keine Freude (und ignoriert sie) - beim Validator sieht die Lage nicht viel anders aus.



geschrieben von

Login

E-Mail:
  

Passwort:
  

Beitrag anfügen

Symbol:
 
 
 
 
 
 
 
 
 
 
 
 
 

Überschrift: