Dies ist eine Sammlung von Punkten aus den Kommentaren, von denen alle sind ziemlich gut:
Ihre Syntax könnte mit einem Leerzeichen umgehen: include "file.php";
.
Ihre Includes sollten wie Groß-und Kleinschreibung behandelt werden, auf LAMP Case-Empfindlichkeit ist ein Standard. Es ist eine gute Angewohnheit, hineinzugehen.
Include
s müssen auf einer PHP-Seite ausgeführt werden, wenn Ihre Seite HTML ist, wird nichts enthalten. PHP kann jede Seite beinhalten, es muss nicht immer eine PHP Seite aufgerufen werden.
Aktivieren Sie die PHP-Fehlerprotokollierung, um zu überprüfen, welcher Grund für das Include nicht angezeigt wird. Siehe PHP Error Displaying.
Stellen Sie sicher, dass Ihre Include-Datei etwas zur Ausgabe an den Browser enthält!
Include
s und require
s und ihre _once
Kollegen in ihrer Art und Weise alle praktisch identisch sind sie arbeiten (es gibt eine schockierende Zahl von Leuten in dieser Frage mit Antworten zu ändern nur include
-require
Denken wird es funktioniert, oder ändern zu include_once
wird es plötzlich funktioniert.
der Unterschied require
ist, dass, wenn der Aufruf fehlschlägt, dann PHP das Skript mit einem Fehler beendet. Daher wird der Inhalt enthalten ist erforderlich (High-Hut!).
Verzeichnisse
Schließen aus Ihrem aktuellen PHP-Verzeichnis beginnen in der Regel, wenn Sie also eine Datei auf /home/account/public_html/horses/index.php
haben und Sie eine Datei aus dem Stamm html /home/account/public_html/include.php
dies einschließlich nicht relativ aus dem aktuellen Verzeichnis zu erreichen welches ist /horses/
.
dieses ganze Problem umgehen, über Sie am beste Praxis einschließlich Dateien mit einem absoluten Dateipfad, wie der Verwendung von $_SERVER['DOCUMENT_ROOT']
wenn einschließlich den Dateien verwendet werden sollen, die im öffentlichen Bereich der Website Ihres Kontos sind. Wenn Dateien aus anderen Teilen Ihres Kontos einschließlich dann noch einem absoluten Pfad gibt aber manuell (mit einem DEFINE
oder dergleichen helfen kann) wie: /home/account/extras/include.php
einige Beispiele für jedes Szenario:
Relative Pfad:
include "folder/file.php";
Oben: Der Ordner muss sich im selben Verzeichnis wie die Datei befinden, in der das Include ausgeführt wird.
include "../parentfolder/folder/file.php";
Oben: Dies wird nicht funktionieren. Includes können relative Verzeichnisse über dem aktuellen Arbeitsverzeichnis nicht ändern.
include $_SERVER['DOCUMENT_ROOT']."/folder/file.php";
// reference address: /home/account/public_html/folder/file.php
Oben: Diese umfassen wird von jeder Seite auf einer beliebigen Stelle Ihrer Website angezeigt werden, solange die enthalten wird, um die HTML-Dokument-Root-withing (typischerweise public_html
). Ich empfehle, $_SERVER['DOCUMENT_ROOT']
zu verwenden, wie der Standardweg oder das Referenzieren einschließt.
define("RootHost","/home/account/secret");
include RootHost."/folder/file.php";
// reference address: /home/account/secret/folder/file.php
Der obige Code würde in der Regel für die Aufnahme von Inhalten verwendet werden, die nicht erreichbar von der Website Browser ist wie in Ihren public_html
HTML-Dokument Stammordnern ist nicht.
Ist Ihre HTML-Seite gespeichert als .php oder einfach nur als .html.Your Seite html enthält als .php für PHP gespeichert werden müssen, sind zu laufen. – wanjiku
Was passiert? Irgendwelche Fehler? Was ist die Ausgabe? Denken Sie auch daran, dass (abhängig von Ihrem Betriebssystem) Dateipfade die Groß-/Kleinschreibung beachten können, während Sie es im Ordner "includes" behalten und "Include" in Ihrem Code haben. –
http://php.net/manual/en/function.include.php Aussage –