| | | | |
| | |
| PHP Code Flüsterer Registriert seit: 21.08.2005 Beiträge: 4682 PHP-Kenntnisse: Fortgeschritten | |
| | ||
| Gast
Beiträge: n/a
| Mal abgesehen von den Vorschlägen: Zitat:
Nehmen wir mal an, der User hat http://www.example.com/index.php aufgerufen. Der Webserver mapt jetzt index.php auf das Documentroot (steht in der virtualhostsektion) und übergibt, da .php, die weitere Verarbeitung an PHP. PHP stellt dem PHP Script die gesamten Daten und Systemparameter in den Arrays $_SERVER und $_ENV zur Verfügung. Der Pfad des Arbeitsverzeichnisses (Startscript) ist für alle includes und requires von entscheidender Bedeutung. Auf der sicheren Seite bist Du, wenn Du mit absoluten Pfaden arbeitest, während man sich bei relativen Pfaden schnell mal verzetteln kann. Besonders dann, wenn ScriptA, ScriptB einfügt, welches wiederum ScriptC haben will. Liegt das Zeuch im Verzeichnis des Startscriptes, ist es für Anfänger noch überschaubar. Ärger gibt es dann, wenn die Files in unterschiedlichen Unterverzeichnissen liegen und auch von unterschiedlichen Startverzeichnissen aus requestet werden kann. Deshalb sollte man sich das angewöhnen: $pfad = dirname($_SERVER['SCRIPT_FILENAME'])'; # oder $pfad = getcwd(); # Achtung! ändert sich, wenn vorher chdir('/anderer/pfad/'); ausgeführt wurde. Die Variable $pfad setzt man dann so ein: require($pfad . '/includes/bibliothek.php'); Und da die Variable $pfad nach dem require auch in bibliothek gültig ist, kann dort stehen: require($pfad . '/includes/unterverzeichnis/ganz_wichtig.php'); Das magst Du jetzt als überflüssig empfinden, aber spätestens dann, wenn Du 100 Scripte anpassen mußtest, weil sich die Verzeichnisstruktur geändert hat, möchtest Du das nicht mehr missen. Warum ich require und nicht include verwende? require reagiert mit einer Fehlermeldung, wenn die Datei nicht gefunden wurde, während include das egal ist... | |
| | |
| Erfahrener Benutzer Registriert seit: 23.08.2004
Beiträge: 175
![]() | Passend dazu habe ich eine Frage, die sich daran anknüpfen lässt und evtl. auch gleich ein praktisches Beispiel. Folgendes ist gegeben: Doc Verzeichnis /usr/home/www/htdocs ich möchte aber eine Datei darüber aufrufen, da ich unter keinen Umständen möchte / mochte, dass da jemand darauf zugreift: include ("/usr/home/www/db.inc.php"); Das lässt sich ja mit $_SERVER['DOCUMENT_ROOT']; nicht realisieren... Andere Idee oder soll ich die Datei doch ins htdocs schmeissen? Als Beispiel gedacht, da das die Logindatei für die DB ist und die kann gehörig oft vorkommen...wehe Dir, wenn da mal ein Providerwechsel vor der Tür steht (ok, mit Homesite suchen / ersetzen kein Problem)...aber dennoch.... |
| |
| | |
| Erfahrener Benutzer Registriert seit: 02.04.2008
Beiträge: 4.032
![]() | Schmeiss doch deine Datei nicht in ein Verzeichnis höher, sondern in ein Unterverzeichnis, das du dann mit .htaccess schützst. Also z.B. /usr/home/www/htdocs/includes. Mehr zu .htaccess findest du z.B. hier. |
| |
| Themen-Optionen | |
| Thema bewerten | |
|
|
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| Include Datei formatieren | st0ny | PHP Tipps 2008 | 12 | 31.07.2008 12:35 |
| Datei löschen mit unlink(); | fender | PHP Tipps 2006 | 2 | 12.11.2006 22:05 |
| Include anderer Datei bei Klick | PHP Tipps 2006 | 2 | 03.01.2006 01:03 | |
| datei auf jeden fall einbinden | PHP Tipps 2007 | 11 | 17.11.2005 15:59 | |
| Include - Wie HTML Dateien einbinden? | PHP Tipps 2005-2 | 2 | 13.10.2005 23:33 | |
| Datei auf FTP-Server ändern ohne lokal abzuspeichern | faux | PHP-Fortgeschrittene | 11 | 02.09.2005 11:54 |
| hilfe mit dem auslesen von datei aus einem ordner | Tic Rederon | PHP Tipps 2005-2 | 2 | 08.08.2005 11:30 |
| HTML Tabelle in PHP Datei einbinden | PHP Tipps 2005-2 | 4 | 14.07.2005 20:11 | |
| Seiten mit include einbinden !!! | PHP Tipps 2005 | 6 | 06.05.2005 10:56 | |
| include nur im gleichen ordner erlaubt | Blank | PHP Tipps 2005 | 3 | 10.03.2005 00:29 |
| include aus anderem ordner | PHP Tipps 2005 | 5 | 04.02.2005 20:06 | |
| .so library Datei einbinden | PHP Tipps 2004 | 2 | 13.10.2004 23:40 | |
| Navigations menü aus einer datei einbinden | PHP Tipps 2004 | 8 | 30.08.2004 15:19 | |
| Inhalt einer Datei einbinden ohne Inhalt anzuzeigen | Corvin | PHP Tipps 2004 | 4 | 22.07.2004 09:24 |
| [Erledigt] Include mit relativen Pfaden | PHP-Fortgeschrittene | 6 | 07.06.2004 12:41 | |
| Besucher kamen über folgende Suchanfragen bei Google auf diese Seite |
| php include übergeordneter ordner, include ordner, php übergeordnetes verzeichnis, include übergeordneter ordner, php include übergeordnetes verzeichnis, php include ordner, php ein verzeichnis höher, php verzeichnis höher, php übergeordneter ordner, php höheres verzeichnis, php einen ordner höher, include verzeichnis darüber, php ordner höher, php include verzeichnis höher, include übergeordnetes verzeichnis, includes ordner, ordner includen, include aus ordner, ordner include, übergeordnetes verzeichnis php |

Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.