raven16
Lieutenant
- Registriert
- Nov. 2008
- Beiträge
- 580
Hi hab mir einen testordner erstellt: www.domain.de/test/...
Nun befinde ich mich in dem ordner test wo alle Dateien stehen
dort drinne hab ich so eine include-datei in dem ordnerverzeichnis (include/login/loginform.inc.php) angelegt...
Auf der index.php wird die loginform.inc.php includiert...
In der loginform.inc.php stehen Abfragen die bei bestimmten Gegebenheiten wie z.B. bei falschem login den Benutzer immer wieder auf die zugänglichen seiten (im diesem Fall die index.php) zurückleiten soll
Im Code bedeutet das also
Wenn die loginform.inc.php aufgerufen wird, dann wird geprüft,...
...ob der Benutzer eingeloggt ist
Wenn nicht dann soll der zu der index.php weiterleiten und das bedeutet das der User so nicht zugriff auf alle anderen Seiten bekommt wozu er nicht authorisiert ist...
Was ich aber komisch finde ist das der mich dann in den Ordner vor dem Ordner test weiterleitet und dort die index.php aufrufen will...
Wenn ich ein ../ in der header(location entferne, dann springt der in den zwischenordner (include)
Wenn ich beide ../ entferne, dann bin ich in dem gleichen ordner wie die loginform.inc.php
Warum zum Teufel überspringt der den test-Ordner einfach wenn ?
Nochmal zusammengefasst:
header('location: ../../index.php'); => www.domain.de/index.php
header('location: ../index.php'); => www.domain.de/test/include/index.php
header('location: index.php'); => www.domain.de/test/include/login/index.php
Der soll aber mit:
header('location: ../../index.php'); in www.domain.de/test/index.php landen...
total komisch irgendwie :-/
Nun befinde ich mich in dem ordner test wo alle Dateien stehen
dort drinne hab ich so eine include-datei in dem ordnerverzeichnis (include/login/loginform.inc.php) angelegt...
Auf der index.php wird die loginform.inc.php includiert...
In der loginform.inc.php stehen Abfragen die bei bestimmten Gegebenheiten wie z.B. bei falschem login den Benutzer immer wieder auf die zugänglichen seiten (im diesem Fall die index.php) zurückleiten soll
Im Code bedeutet das also
PHP:
if(logged_in())
{
//Wenn in der Adressleiste eine userid gesetzt wurde,dann...
if(!empty($_GET['userid']))
{
//User scheint offiziell eingeloggt und kann begrüßt werden :-)
$userid = $_GET['userid'];
if($userid)
{
$user = get_username($userid);
echo 'Willkommen '.$user.'.
<a href="login/admin/admin_menu.php?userid="'.$userid.'"">Adminbereich</a>
<a href="include/login/logout.inc.php">Logout</a>';
}
}
else header('location: ../../index.php');
}
...ob der Benutzer eingeloggt ist
Wenn nicht dann soll der zu der index.php weiterleiten und das bedeutet das der User so nicht zugriff auf alle anderen Seiten bekommt wozu er nicht authorisiert ist...
Was ich aber komisch finde ist das der mich dann in den Ordner vor dem Ordner test weiterleitet und dort die index.php aufrufen will...
Wenn ich ein ../ in der header(location entferne, dann springt der in den zwischenordner (include)
Wenn ich beide ../ entferne, dann bin ich in dem gleichen ordner wie die loginform.inc.php
Warum zum Teufel überspringt der den test-Ordner einfach wenn ?
Nochmal zusammengefasst:
header('location: ../../index.php'); => www.domain.de/index.php
header('location: ../index.php'); => www.domain.de/test/include/index.php
header('location: index.php'); => www.domain.de/test/include/login/index.php
Der soll aber mit:
header('location: ../../index.php'); in www.domain.de/test/index.php landen...
total komisch irgendwie :-/