PHP-Konstante vs. valides XHTML
Maxxe
- html
1 Der Martin0 Maxxe
0 dedlfix
Hi zusammen,
ich habe ein Suchfeld mittels zweier PHP-Konstanten in eine Seite eingebaut.
<div><SEARCH_FORM><SEARCH_RESULTS></div>
<SEARCH_FORM> wird sofort in HTML umgesetzt/ausgegeben, <SEARCH_RESULTS> natürlich erst, nachdem Suchresultate existieren. Bis dahin steht im HTML-Code die Konstante <SEARCH_RESULTS> im Reintext da. Und genau das wird bei der XHTML-Validierung bemängelt. Kann ich die Konstante irgendwie maskieren o.ä. Ich hätte gern validen Code.
Danke und Gruß
Maxxe
Hallo,
ich habe ein Suchfeld mittels zweier PHP-Konstanten in eine Seite eingebaut.
also quasi ein einfaches Template-System?
<div><SEARCH_FORM><SEARCH_RESULTS></div>
<SEARCH_FORM> wird sofort in HTML umgesetzt/ausgegeben, <SEARCH_RESULTS> natürlich erst, nachdem Suchresultate existieren. Bis dahin steht im HTML-Code die Konstante <SEARCH_RESULTS> im Reintext da.
Das heißt, beim Client kommt sowas an:
<div><form ...>...</form><SEARCH_RESULTS></div>
Ist natürlich vom Konzept her nicht schön.
Und genau das wird bei der XHTML-Validierung bemängelt. Kann ich die Konstante irgendwie maskieren o.ä. Ich hätte gern validen Code.
Quick and dirty: Stelle dein Template-System so um, dass die Platzhalter in vollständigen HTML-Kommentaren stehen:
<!--SEARCH_FORM--><!--SEARCH_RESULTS-->
Saubere Lösung: Expandiere <SEARCH_RESULTS> zu einem Leerstring, wenn's noch keine Ergebnisse zum Anzeigen gibt.
Ciao,
Martin
Hi Martin, danke für die schnelle Antwort! Genau so hatte ich es gemeint. Tolle Hilfe, ich denke das wird klappen. Ansonsten meld ich mich nochmal. ;)
Schönen Abend dir
Maxxe
Hi!
ich habe ein Suchfeld mittels zweier PHP-Konstanten in eine Seite eingebaut.
Unmöglich. Wenn die Seite im Browser landet ist PHP bereits Geschichte. Mit PHP kannst du beeinflussen, was im Browser landet.
<SEARCH_FORM> wird sofort in HTML umgesetzt/ausgegeben, <SEARCH_RESULTS> natürlich erst, nachdem Suchresultate existieren.
Dann muss deine Ausgaberoutine das <SEARCH_RESULTS> eben durch einen Leerstring ersetzen, wenn es nichts gibt, mit dem der Browser was tun soll.
Lo!