hallo zusammen.
folgedes script:
anmedeseite (inlude eines config-files in dem das passwort steht und md5 verschlüsselt wird) und verifikation des passwortes. bei erfolgreicher bestätigung wird der md5 schlüssel für das passwort in der variablen $_SESSION['passwd'] abgelegt und die start-seite (adr_main.php) wird geladen.
mittels switch springe ich verschiedene templates an, wo ich immer das config.file include und den dort erstellten md5 schlüssel mit der sessions-variablen vergleiche.
PHP-Code:
session_start();
include("config.php");
if($_SESSION['passwd'] != $passwort)
{
die($lng['main']['noaccess']);
exit;
}
ein unset auf die session gibt es im script nicht, nur beim logout, wird natürlich bereinigt.
das ganze läuft auf zig apache-servern mit php 4.3.8 ohne probleme
nun mein problem.
die variable $_SESSION['passwd'] bleibt mir im script überall erhalten, es sei denn, ich lege neue daten an und refreshe den bildschirm automatisch mit diesem befehl:
Code:
?><meta http-equiv="refresh" content="0;URL=adr_main.php"><?
diese anweisung schliesse ich als reine fehlerquelle eigentlich aus, da ich die zeile noch an z anderen stellen des scripts verwende und dort keinerlei probleme habe.
da schon daten an den browser gesendet wurden, kann ich header befehl nicht verwendet (ich weiss, das ist noch nicht ganz sauber, aber es muss so ja auch gehen), was allerdings am fehler auch keinen unterschied machen würde, ich habe es probiert.
den einzigen unterschied den ich feststellen konnte war der, dass Server API dort wo es läuft auf
Apache 2.0 Handler steht und dort wo ich probleme habe Server API auf
CGI
was kann ich tun, um die fehlerquelle zu finden und natürlich um den fehler weg zu bekommen ??
error_reporting(E_ALL) gibt mir nichts aus, einzig die sessionsvariable ist weg.
danke