Willkommen in der Webstatt Zum Webstatt Blog und Stories
Rebel4s Rebel4s am 28.05.07 10:54

Hallo,
Ich steh grad aufm Schlauch. Ich habe folgende Klasse:
<?PHP

class user {

protected static $sid;
protected static $ip;
protected static $useragent;

protected static $userid;
protected static $guestid;
protected static $login;

public function __construct()
{
self::set_sid(session_id());
self::set_ip(md5($_SERVER['REMOTE_ADDR']));
self::set_useragent($_SERVER['HTTP_USER_AGENT']);

self::set_login($_SESSION['login']);
self::set_userid($_SESSION['userid']);
self::set_guestid($_SESSION['guestid']);
}

/* User Daten holen */

public function get_sid ()
{
return self::$sid;
}

public function get_ip ()
{
return self::$ip;
}

public function get_useragent ()
{
return self::$useragent;
}

public function get_userid ()
{
return self::$userid;
}

public function get_guestid ()
{
return self::$guestid;
}

public function get_login ()
{
return self::$login;
}

/* User Daten setzen */

public function set_sid ($new_sid)
{
self::$sid = $new_sid;
}

public function set_ip ($new_ip)
{
self::$ip = $new_ip;
}

public function set_useragent ($new_useragent)
{
self::$useragent = $new_useragent;
}

public function set_userid ($new_userid)
{
self::$userid = $new_userid;
}

public function set_guestid ($new_guestid)
{
self::$guestid = $new_guestid;
}

public function set_login ($new_login)
{
self::$login = $new_login;
}

}
?>



Nun will ich das $userid, $guestid und $login eine Referenz von ihrer Session Variablen $_SESSION['userid'], $_SESSION['guestid'], $_SESSION['login'] sind.

Kann ich da diese Struktur beibehalten, dass die Variablen der Klasse protected sind? Problem ist ja, dass man auf die Variablen nur per Methode zugreifen kann.

netcup.de Warum gibt es hier Werbung?
Neals am 29.05.07 08:48

Das kannst du doch regeln, indem du Adressen übergibst.

Wenn du vor ne Variable ein & setzt und die Adresse &$Session['ID'] an den Pointer *$sid übergibst.

Ich weiß nicht ob die Schreibweise mit & und * korrekt ist in PHP, so wirds in C++ gemacht.

Rebel4s Rebel4s am 29.05.07 13:28

hab eine Lösung gefunden, nur ich weiß nicht ob das mit der Referenz nun das Wahre ist.
Ich will ja vermeiden, dass irgendwie die Session manipuliert wird (durch Sicherheitslücken), deshalb die Klasse oder ist das überflüssig?

Neals am 29.05.07 16:45

Das nicht, aber weiß nicht warum es gerade Referenzen sein müssen... du musst die Klasse ja eh mit jedem neuen Seitenaufruf neu erstellen...

Creative Commons Lizenzvertrag
Alle Inhalte des Webstatt-Archivs stehen unter einer Creative Commons Namensnennung - Weitergabe unter gleichen Bedingungen 3.0 Unported Lizenz.

Impressum & Kontakt