Mailinglisten-Archive |
> "[...] > Welche Einschränkungen haben Scripte allgemein bei Puretec? > [...] > > PHP läuft bei Puretec als CGI. Damit funktionieren Headerveränderungen > (notwendig zur Authentifizierung per 401) nicht. Bitte beachten Sie auch > die dadurch entstehenden weiteren Einschränkungen. soll das etwa ein problem sein ??????? eine lösung wäre: funktion auth() returned true oder false $selfphp = preg_replace("/^.*\\//","",$PHP_SELF); $user = "alphatier"; $pw = "wolf".rand(1,10); $check_security = true; function auth($basicrealm="Securitycheck") { GLOBAL $selfphp,$user,$pw,$su,$sp,$PHP_AUTH_PW,$PHP_AUTH_USER; GLOBAL $check_security; if($check_security==true){ if (preg_match("/\\.(exe|cgi)$/i",getenv("SCRIPT_FILENAME"))==true) { if(!isset($suser)){$suser="";} if(!isset($spw)){$spw="";} $suser = sess_get_var("user"); // session spezifisch $spw = sess_get_var("pw"); // session spezifisch if( $suser == md5($user) && $spw == md5($pw) ){ return true; }elseif( _(at)_$su == $user && _(at)_$sp == $pw ){ sess_save_var("user",md5($user)); // session spezifisch sess_save_var("pw",md5($pw)); // session spezifisch return true; } else { echo '<html><body><form action="'.$selfphp.'" method="post"> <h1>Authentification</h1> <input type=hidden name=session value=uehr2389hwoeihdf> <input type="text" name="su" size="30" maxlength="80" value=""> User<br> <input type="password" name="sp" size="30" maxlength="80" value=""> Passwort<br> <input type="submit" value="Ok"> </form></body></html>'; return false; exit; } // endelse } // endif cgi oder exe else { if(!$PHP_AUTH_USER || !$PHP_AUTH_PW) { Header("WWW-Authenticate: basic realm=\"$basicrealm\""); Header("HTTP/1.0 401 Unauthorized"); return false; exit; } else { if ($PHP_AUTH_USER == $user && $PHP_AUTH_PW == $pw) { return true; } else { return false; } } } // endelse exe cig } elseif($check_security==false) {return true; } else { return false; } } -kiri _______________________ http://www.php-usertreffs.de
php::bar PHP Wiki - Listenarchive