kenbb wrote:PHP-Code kann auch mit Tricks in Html-Datei ausführen aber mir ist das nicht gelungen. Wenn jemand weiß, wie das gehen sollte, es wäre schön zu wissen.
EInfach reinschreiben. Die Datei muss so in jedem Fall via http: im Browser gestartet werden, denn PHP wird vom Server(!) ausgeführt, NICHT vom Browser. Wenn man das schon einmal verstanden hat, sollte einem auch klar sein, warum PHP nicht ausgeführt wird, wenn man einfach einen Dateipfad c:/... lädt, dann da ist nur der Browser aktiv und der KANN kein PHP. Apache startet den PHP Interpreter und Apache läuft auf einem Server und Server erreicht man u.a. durch die Angabe des Protokoll http:.
Will man PHP Code in HTML Dateien ausführen, gibt es die Möglichkeit, die Datei beispielsweise durch einen "include()" aus einer PHP Datei aufzurufen. Beispiel:
- Code: Select all
<?php
include "test.html";
?>
Nennen wir diese Datei start.php und rufen sie via
http://localhost/start.php aus unserem htdocs Verzeichnis auf, dann legt man eine test.html an und kann da auch PHP Code hineinschreiben.
Will man direkt (ohne darüber liegende PHP Datei) die HTML Datei durch den PHP Interpreter schicken, so müßte zumindest erst einmal auch der Aufruf im Browser entsprechend aussehen:
http://localhost/test.htmlTypischerweise wird dann aber in der Tat der PHP Interpreter von Apache nicht gestartet. Das könnte man auch ändern, dazu muss die Apache Konfiguration geändert werden, im Prinzip muss man auch HTML Dateien als Typ PHP deklarieren. Bei Xampp ist das in der Datei httpd-xampp.conf vorkonfiguriert, da findet sich diese Zeile:
- Code: Select all
AddType application/x-httpd-php .php .php3 .php4
Damit werden alle Extensions definiert, für die Apache den PHP Interpreter startet. Will man .html auch dabei haben, muss man es einfach auch angeben und Apache neu starten:
- Code: Select all
AddType application/x-httpd-php .php .php3 .php4 .html
Allerdings stellt sich die Frage nach dem Sinn, jetzt startet der PHP Interpreter nämlich IMMER, auch für alle HTML Dateien, auch wenn da gar kein PHP drin steht. Der Anwender hat jetzt keine Möglichkeit, das abzustellen. Man kann also jetzt überhaupt nicht mehr unterscheiden, ob eine Datei PHP Code beinhaltet oder nicht, während man vorher mit .html nur HTML Dateien hatte. Was wäre ein sinnvoller Einsatz für so eine Konfiguration?