Gunnar Bittersmann: include() böse[tm] u.a.?

Beitrag lesen

Regel Nummer 1: Man kann SSI und PHP nicht mischen in einer Datei und erwarten, dass beide Codes wirken.

Hi Sven,
Das ist mir schon klar; ich will auch gar nicht, dass beide Codes wirken. Sie tun ja auch dasselbe, nämlich den Zeitpunkt der letzten Änderung ausgeben …

Aber es ist ja kein Problem, das, was SSI tun soll, auch mit PHP zu tun. Man kann also den SSI-Teil dieser fuss.shtml auch komplett in PHP erledigen.

… und dafür muss man ja nicht immer gleich die PHP-Engine anschmeißen, wenn SSI reicht. Nur, wenn ich auf einer Seite für andere Dinge PHP brauche, kann ich die Datei nicht mit SSI einfügen.

Natürlich könnte ich zwei getrennte Dateien fuss.shtml und fuss.php für exakt denselben Zweck anlegen. Nur unschön, dass dann Änderungen jeweils in beiden Datein gemacht werden müssen.

Oder stückeln in fuss_anfang und fuss_ende, dann mit SSI:

<!--#include virtual="/Includes/fuss_ballen" -->  
<!--#config timefmt="%Y-%m-%dT%H:%M%z" --><!--#echo var="LAST_MODIFIED" -->  
<!--#include virtual="/Includes/fuss_hacken" -->

und mit PHP:

<?php  
[code lang=php]  readfile($_SERVER['DOCUMENT_ROOT'].'/Includes/fuss_ballen');  
  echo date('Y-m-d\TH:iO', getlastmod());  
  readfile($_SERVER['DOCUMENT_ROOT'].'/Includes/fuss_hacken');

?>[/code]

Auch nicht sonderlich elegant.

Mit anderen Worten: Es gibt eigentlich keinen Grund, SSI und PHP in einer Datei zu mischen.

Die Alternative wären wohl zwei Dateien, so oder so.

Und es gibt auch keinen Grund, ungeparstes SSI oder PHP an den Browser zu schicken.

Das wäre die Folge, wenn ich nur eine Datei haben möchte. Oder geht’s auch mit einer Datei anders?

aber PHP-Code böte unter Umständen dann doch die Offenbarung von Angriffspunkten

Prinzipiell ja, in meinem Fall stehen keine Geheimnisse drin.

Live long and prosper,
Gunnar

--
„Weisheit ist nicht das Ergebnis der Schulbildung, sondern des lebenslangen Versuchs, sie zu erwerben.“ (Albert Einstein)