forumfriedel wrote:Also lag der Fehler in meiner Unwissenheit ( Blödheit ) ..........SORRY
Hehe, mach dir nichts draus. Das ist ein häufiger Fehler von HTML zu PHP Umsteigern, bzw. bei Hobby-Entwicklern, die zum ersten Mal lokal eine Testumgebung aufbauen. Man muss sich einfach damit vertraut machen, dass PHP eine serverseitige Programmiersprache ist und deshalb alles über das http-protokoll laufen muss, damit der Server überhaupt in Aktion tritt.
forumfriedel wrote:Den "short_open_tag" lasse ich jetzt aber trotzdem mal auf On. Wenn ich langeweile habe werde ich ihn mal wieder auf Off setzen, um zu sehen ob es auch daran lag
Sofern du <? statt <?php einsetzt, wirst du definitiv mit short_open_tag = Off Probleme haben. Falls du keine Langeweile findest, ist es dennoch keine schlechte Idee, sich damit mal auseinanderzusetzen. Am meisten lernt man eben immernoch, wenn man bestimmte Fehlerkonstellationen einmal selbst erlebt. Wenn es dann irgendwann wieder auftritt weißt du sofort "Hab ich schonmal gesehen, da kann ich ansetzen" (oder zumindest wo du nach suchen musst
)
forumfriedel wrote:Die Befehlszeile <? include ("menu.txt"); ?> habe ich jetzt so gelassen. Sie Funktioniert hochgeladen Online sowohl auch Offline von meiner Festplatte.
Jetzt habe ich aber gelesen und Du hattest auch geschrieben das <?php include ("menu.txt"); ?> oder ohne runde Klammern oder ' anstatt " auch geht........was denn nun?
Die PHP-Dokumentation würde hierzu sagen
include ist ein spezielles Sprachkonstrukt, keine Funktion
Die Verwendung mit Klammern sollte aber auch funktionieren. Ich halte mich bei sowas an die Beispiele auf
php.netEinfache Anführungszeichen ' oder doppelte Anführungszeichen "... das ist teilweise Geschmackssache. Beachte aber, dass Zeichenketten in doppelten Anführungszeichen geparst werden. Stehen dort also Variablen drin werden sie durch ihre jeweiligen Werte ersetzt, während bei einfachen Anführungszeichen dies nicht der Fall ist. Deshalb noch ein guter Tipp: Setze doppelte Anführungszeichen nur dort ein, wo es notwendig und sinnvoll ist.
forumfriedel wrote:Und meine ausgelagerte Menüdatei................es soll vollig egal sein, ob sie die Endung .txt / .htm. / .php / .xxx oder ......... hat !!?? Sie darf lediglich NUR HTML Code beinhalten.
Wenn sie wirklich nur HTML enthält, ist es wirklich egal. Eine selbstsprechende Namensgebung kann dir später aber mal das Leben sehr erleichtern. Deshalb ist es nie verkehrt sich von vorn herein, auch bei kleinen Projekten, eine einheitliche Namensgebung zu überlegen.
Spätestens, wenn deine includierte Datei doch eine Zeile PHP enthalten soll, ist die Endung nichtmehr egal, dann sollte sie Zwingend ein .php am Ende haben, um zu gewährleisten, dass sie nicht durch einen direkten URL-aufruf als Klartext an den Anwender übertragen zu werden, sondern vorher durch den PHP-parser gejagt werden.
Ich habe mir angewöhnt, includierten html-Seiten die Endung .inc.html und includierten php Seiten .inc.php zu verpassen. So wird auch direkt klar, dass diese Seiten nicht direkt aufgerufen werden sollen sondern includiert werden.