sheeba1507
Erfahrenes Mitglied
Hi zusammen ( ja, ich lebe noch ;-) ),
da ich mich bislang mit "session" nicht so befasst habe, habe ich damit
ein paar Probleme.
Bei einer Session-Prüfung tritt online ein Fehler auf, der aber lokal
nicht vorhanden ist.
In einem Login-Formular können sich sowohl Kunden mit ihrer Kunden-Nummer
und Passwort als auch der Admin mit seinen Zugangs-Daten anmelden.
Um zu verhindern, daß man den Admin-Bereich ohne Zugangs-Daten
direkt (wenn man die Datei weiß) aufrufen kann, prüfe ich, ob man sich
ordnungsgemäß angemeldet hat und die Session gesetzt wurde.
Folgende Codierung liegt vor :
login.php
Den Kunden-Bereich abc.php direkt aufrufen würde nichts bringen, da ohne
Kunden-Nummer in der Session keine Daten angezeigt werden.
Deshalb ist hier eine Session-Prüfung (noch) nicht notwendig.
xyz.php
Es wird zwar der Admin-Bereich aufgerufen und lokal kann man auch alle
Funktionen aufrufen.
Online jedoch erhält man bei Aufruf einer Funktion die Zugriffs-Meldung.
Da ich bislang noch keine Erfahrung mit Session habe, kann ich hier den
Fehler nicht nachvollziehen und bitte euch nun um Hilfe.
Thx im voraus.
Gruß, Mike
da ich mich bislang mit "session" nicht so befasst habe, habe ich damit
ein paar Probleme.
Bei einer Session-Prüfung tritt online ein Fehler auf, der aber lokal
nicht vorhanden ist.
In einem Login-Formular können sich sowohl Kunden mit ihrer Kunden-Nummer
und Passwort als auch der Admin mit seinen Zugangs-Daten anmelden.
Um zu verhindern, daß man den Admin-Bereich ohne Zugangs-Daten
direkt (wenn man die Datei weiß) aufrufen kann, prüfe ich, ob man sich
ordnungsgemäß angemeldet hat und die Session gesetzt wurde.
Folgende Codierung liegt vor :
login.php
PHP:
<?php
session_start();
...
if ($kunde == "1234" && $passw == "5678") //Admin-Zugang
{
$_SESSION['user'] = '12345678';
header("Location: xyz.php"); //Aufruf Admin-Bereich
}
//Hier folgt die Abfrage der Kunden-Datenbank und Vergleich
// auf Passwort.
//Wenn korrekt, dann
$_SESSION['member'] = $kd_num;
header("Location: abc.php"); //Aufruf Kunden-Bereich
?>
Kunden-Nummer in der Session keine Daten angezeigt werden.
Deshalb ist hier eine Session-Prüfung (noch) nicht notwendig.
xyz.php
PHP:
<?php
session_start();
...
if(!isset($_SESSION['user']))
{
?>
<p>
Sie haben keine Zugriffsrechte !
</p>
<?php
}
else
{
//Hier folgt der Admin-Bereich
}
?>
Funktionen aufrufen.
Online jedoch erhält man bei Aufruf einer Funktion die Zugriffs-Meldung.
Da ich bislang noch keine Erfahrung mit Session habe, kann ich hier den
Fehler nicht nachvollziehen und bitte euch nun um Hilfe.
Thx im voraus.
Gruß, Mike