phpbar.de logo

Mailinglisten-Archive

[php] PHPlib und Login

[php] PHPlib und Login

Joerg Behrens behrens_(at)_takenet.de
Tue, 28 Nov 2000 10:01:28 +0100


Moin,

Christian Thiele schrieb:
> 
>  Nachricht von:
> Christian Thiele (Christian.Thiele_(at)_brokat.com) am Montag, 27.November 2000 um 19:56:45
> ---------------------------------------------------------------------------
> 
> nachricht: Hi,
> 
> ich hab mal ne Verständnisfrage zu dem Thema was ich heute schonmal fragte wegen PHPlib und Login.
> 
> Also ich habe einen Bereich nur für Mitglieder der mit einer Menge von Community-Features ausgestattet ist und einen Bereich für normale Besucher die sich nicht anmelden brauchen und so wollte ich es eigentlich auch keine Session erhalten...die normalen Seiten sind mehr oder weniger statisch und in die statischen Seiten wollte ich ein Loginform einbauen um in den Mitgliederbereich zu kommen...soweit noch klar, aber lt. Björn sollte ich Default-Auth nutzen, aber da kommt doch jeder in meinen Mitgliederbereich rein...
> 
> Das sorgt dafür das nur Mitglieder die auch angemeldet sind reinkommen und das auch die benötigten Variablen da sind ( brauche Benutzername für weitere Funktionen )
> 
> Aber mit der Methode krieg ich es nicht hin das man in eine ganz normale PHP3-Datei mit Loginform seinen Daten eingeben kann und dann sofort auf der Seite für Mitglieder ist sondern zuerst wird nochmal eine Loginseite generiert...wie kriege ich es nun hin das man sofort eingeloggt ist???

Also fuer den automatischen login setzt man die var nobody.

Ausschnitt aus local.inc

class ncs_auth extends Auth {
  var $classname      = "ncs_auth";
  var $lifetime       =  15;
  var $nobody         = true;  // <- HIER!
  var $database_class = "ncs_db";
  var $database_table = "auth_user_crypt";

  ....
}

In deine Seiten schreibst du dann rein..

<?php
page_open(array("sess" => "sid", "auth" => "ncs_auth", "perm" =>
"ncs_perm"));
$auth->login_if($again);
?>

Was noch fehlt damit sich registrierte Anwender einloggen koennen ist
echo "<a href=\"".$sess->url($PHP_SELF."?again=yes")."\"> Login</a>\n";


Im folgendes login.ihtml scheint aber da ein Bock zu sein.(?) Das Form
ruft sich ueber $PHP_SELF wieder selber auf... da dort wieder again=yes
gesetzt wird landest du wieder auf dem Loginscreen.. ich hab das mit
einem str_replace heraus genommen., seitdem funzt es.

Gruss
Joerg Behrens

ps: Der optionale Login ist aber im PHPlib Manual beschrieben... sogar
in den deut. Kapiteln.. ;)



-- 
Key fingerprint =  92 7D E0 A6 CF AE EC 32  14 28 EF 0D 57 2A 88 5B
----------------------------------------------------------------------
TakeNet GmbH					Mobil: 0171/60 57 963			
D-97080 Wuerzburg				Tel: +49 931 903-2243				
Alfred-Nobel-Straße 20				Fax: +49 931 903-3025


php::bar PHP Wiki   -   Listenarchive