PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr

PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr (https://www.php-resource.de/forum/)
-   PHP Developer Forum (https://www.php-resource.de/forum/php-developer-forum/)
-   -   Für Fortgeschrittene: RewriteEngine + Cookies (https://www.php-resource.de/forum/php-developer-forum/7708-fuer-fortgeschrittene-rewriteengine-cookies.html)

MFG 27-05-2002 20:35

Für Fortgeschrittene: RewriteEngine + Cookies
 
Nabend ihr Profis :D,

ich habe eine Homepage erstellt, und will nun noch ein Benutzersystem, dass über Cookies laufen soll einbauen. Das Problem ist, dass die ganze Homepage über die RewriteEngine vom Apache angesteuert wird. Und nun weiß ich nicht, ob folgendes geht:

1. Cookies werden ja immer für ein Verzeichnis gespeichert. Wie ist das beim Rewriting, dort habe ich ja sehr viele dynamische Verzeichisse?
2. Kann ich Cookies Global für einen ganzen Server, bzw für ein Verzeichnis und seine Unterverzeichnisse setzen ?

Hier noch ein kleines Beispiel, wie die Homepage funzt:

dateipfad - dateiname - rewritepfad
server.de/hp/seite1/ - 1.php - /hp/1.php
server.de/hp/seite2/ - 2.php - /hp/2.php
server.de/hp/seite3/ - 3.php - /hp/3.php
server.de/hp/seite4/ - 4.php - /hp/4.php
server.de/hp/seite4/subpage1/ - sub4.php - /hp/sub4.php

Die Cookies sollen sowohl in server.de/hp/seiteX/ wie auch in server.de/hp/seiteX/subpageX/ verfügbar sein.

Ich hoffe ihr könnt mir helfen.

dangeschön

JoelH 27-05-2002 20:37

hmm,
 
wenn nicht anders angegeben gelten Cookies für die ganze Domain.

MFG 27-05-2002 20:39

so einfach ???
 
kewl, danke

einfache antwort auf eine schwere Frage :)

danke

goth 27-05-2002 21:15

Re: so einfach ???
 
Zitat:

Original geschrieben von MFG
kewl, danke

einfache antwort auf eine schwere Frage :)

danke

Bei Netscape aber eigentlich nur wenn du '.domain.de' angibst ... also mit Punkt vor dem Domain-Namen ... (ich glaube steht in rfc3134)
Als Pfad sollte "/" gesetzt sein ... Pfad gibt immer das 'Cookie-Root' an ...

MFG 27-05-2002 22:10

Hm,

also die Cookies werden ordnungsgemäß im Verzeichnis http://localhost/hp/login/ gesetzt. Aber auf den anderen Seiten werden sie nicht erkannt.

Was ist in dem folgenden Code falsch?

PHP-Code:

// SERVER_NAME IST 'localhost'
setcookie("auth_name",$user,date(u),"/hp/",$SERVER_NAME);
setcookie("auth_pass",$pw,date(u),"/hp/",$SERVER_NAME); 


MFG 27-05-2002 22:54

also,

mitlerweile habe ich über das Array $HTTP_COOKIE_VARS herausbekommen, das das cookie gesetzt wurde, und auch überall verfügbar ist!

Nun noch ne Frage, das Array ist doch ein Globales, oder? Also sollte es doch in jeder Funktion/Klasse vorhanden sein, oder ?

MFG 27-05-2002 23:07

grrr, jetzt bin ich sauer auf mich.

Natürlich war das Array nicht in den Classen nicht verfügbar ...

.. nochmlas danke für all eure Hilfe, jetzt läufts bei mir !

goth 28-05-2002 00:05

Zitat:

Original geschrieben von MFG
also,

mitlerweile habe ich über das Array $HTTP_COOKIE_VARS herausbekommen, das das cookie gesetzt wurde, und auch überall verfügbar ist!

Nun noch ne Frage, das Array ist doch ein Globales, oder? Also sollte es doch in jeder Funktion/Klasse vorhanden sein, oder ?

$HTTP_COOKIE_VARS wird erst Global wenn's mit GLOBAL Global deklariert wird ... :D

$_COOKIE ist automatisch Global.


Alle Zeitangaben in WEZ +2. Es ist jetzt 00:18 Uhr.

Powered by vBulletin® Version 3.8.2 (Deutsch)
Copyright ©2000 - 2020, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.3.0
[c] ebiz-consult GmbH & Co. KG