So starten Sessions in PHP mit einer vorangestellten Datei

Um Sitzungen zu nutzen, müssen Sie die anrufen session_start () Funktion auf jeder Seite, die Sitzungen verwendet wird. Dies kann mühsam sein, vor allem, wenn Sie versuchen, Sitzungen auf mehrere PHP-Programme zu heften. Sie können ein verwenden auto_prepend_file anrufen session_start und dabei, Sie müssen keine anderen Dateien ändern!

In der folgenden Übung erstellen Sie zwei Dateien: eine, die die Hauptdatei und eine andere, die eine vorangestellte Funktion sein wird, eine Sitzung zu starten. Vor der Durchführung dieser Übung sollten Sie sicherstellen, dass ..htaccess Dateien arbeiten oder dass Sie Ihre Apache-Web-Server-Konfiguration ändern.

Achten Sie darauf, Apache neu starten, wenn Sie eine Änderung an der Konfiguration vornehmen.

Innerhalb der ..htaccess Datei für das Dokument Wurzel, den folgenden Code:

php_value auto_prepend_file "prepend.php"

Alternativ können Sie diese Zeile in der Strophe in der Apache-Konfiguration für Ihren Webserver für Ihr Dokument root hinzufügen. Zum Beispiel, wenn Sie Ihr Dokument Wurzel # 147-/ Var / www# 148- Sie können diese Zeile nach dem hinzufügen # 147-/ Var / www# 148-> Richtlinie und vor der Schließung Linie in der Apache-Konfiguration.

Öffnen Sie Ihren Texteditor und erstellen Sie eine neue leere Datei. Innerhalb der Datei den folgenden Code ein:

? Lt; phpif (isset ($ _ SESSION)) {print "! Session begonnen hat" -} else {print "Session hat noch nicht begonnen" -}>

Speichern Sie die Datei als session.php in Ihrem Dokument Wurzel.

Öffnen Sie einen Webbrowser und verweisen auf http: //localhost/session.php. Sie sollten eine Seite wie diese zu sehen.

bild0.jpg

Minimieren Sie den Web-Browser und erstellen Sie eine neue Datei in Ihrem Texteditor. Innerhalb dieser Datei den folgenden Code ein:

? Lt; phpsession_start () ->

Speichern Sie die Datei als prepend.php in Ihrem Dokument Wurzel.

In Ihrem Web-Browser, laden Sie die session.php Datei oder gehen Sie zu http: //localhost/session.php zu sehen die session.php Datei, die Sie zuvor erstellt haben. Sie sollten jetzt eine Seite wie diese zu sehen.

image1.jpg

Wenn Sie eine leere Seite oder einen Fehler angezeigt über den Browser empfangen, dann wurde die vorangestellte Datei nicht gefunden. Überprüfen Sie die einfachen Sachen, wie die Rechtschreibung der Datei (prepend.php). Überprüfen Sie auch, stellen Sie sicher, dass die Datei, die Sie mit der angerufene auto_prepend_file Richtlinie ist, wo es sein sollte, im Document-Root, wenn das ist, wie Sie Ihren Web-Server konfiguriert ist.

Wenn Sie eine Seite erhalten, die noch sagt "Session nicht begonnen hat", dann gibt es eine Chance, dass Apache nicht sieht Ihre auto_prepend_file Richtlinie überhaupt. Wenn Sie habe es in ein platziert ..htaccess Datei in Ihrem Dokument-Root, müssen Sie sicherstellen, dass Apache die liest ..htaccess Datei. Lesen Sie weiter oder erkundigen Sie sich bei Ihrem Hosting-Anbieter, ob ..htaccess Dateien erlaubt.

Einige Web-Server-Konfigurationen erlauben nicht für ..htaccess Dateien. Sie können Apache neu konfigurieren, damit sie durch die sich verändernde AllowOverride Richtlinie Alle für das Verzeichnis, aus dem Sie lesen möchten, die ..htaccess Datei (in diesem Fall, das Dokument root). Die Richtlinie sollte wie folgt aussehen:

AllowOverride All

Vorangestellter Dateien können unglaubliche Helfer sein, sie können aber auch manchmal zu Verwirrung führen. wenn Sie nicht sicher sind zum Beispiel, warum ein Programm etwas tut, eine Auto-Datei voran kann manchmal zu dieser Verwirrung, weil es so viele andere Dateien und Funktionen lädt - Hinzufügen genügend Raum für Fehler.

Darüber hinaus verwenden jede Anfrage muss jetzt, dass Auto-Datei vorangestellt, die Probleme der Leistung führen kann, wenn Sie zu verketten viele erforderliche und enthalten Dateien aus dem vorangestellten Datei. Mit dieser sagte, die Vorteile überwiegen die Nachteile in der Regel für vorangestelltem Dateien.

Menü