php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2007

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 13.12.2005, 14:20  
Erfahrener Benutzer
 
Registriert seit: 18.11.2005
Beiträge: 126
Clint
Standard session_set_save_handler()

Hi,
ich probier gerade seit stunden ein skript zu finden mit dem ich
meine sessions mit mysql verwalten kann ich hab zwar selbst auch probiert
eins zu schreiben aber es funzt nicht und ich habe auch keine fehlermeldung mit der ich arbeiten könnte da mein apache abstürzt beim versuch eine session zu starten.

Danke für die hilfe


ps: der rückgabewert von session_set_save_handler() = True
Clint ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 14.12.2005, 08:42  
Erfahrener Benutzer
 
Registriert seit: 14.07.2005
Beiträge: 157
DonTermi
Standard

Auszug aus meiner Session Klasse.

Hinweis! Bei $MYSQL handelt es sich um eine MySQL Klasse von mir. Muß also an Deine Bedürfnisse angepaßt werden!

Code:
<?php

class SESSION
{
	// -------------------------------------------
	// -									-
	// -		Sessions with MySQL				-
	// -									-
	// -------------------------------------------
	/*
	MySQL 3.23.x

	CREATE TABLE `sessions` (
	  `sesskey` varchar(32) NOT NULL default '',
	  `sessvalue` text NOT NULL,
	  `modify` timestamp NOT NULL default '0000-00-00 00:00:00',
	  PRIMARY KEY  (`sesskey`)
	) TYPE=MyISAM;
	*/
/*--------------------------------------------------------------------------------------------------------------------*/
	Function _OPEN($save_path, $session_name)
	{
		Return (true);
	}
/*--------------------------------------------------------------------------------------------------------------------*/
	Function _CLOSE()
	{
		Return (true);
	}
/*--------------------------------------------------------------------------------------------------------------------*/
	Function _READ($id)
	{
		$MYSQL = $GLOBALS["MYSQL"];

		$MYSQL->QUERY("SELECT * FROM sessions WHERE sesskey='$id'");

		if($MYSQL->NUM_ROWS>0)
		{
			Return (stripslashes(mysql_result($MYSQL->QUERY_RESOURCE,0,"sessvalue")));
		} else {
			Return ("");
		}

		Return ("");
	}
/*--------------------------------------------------------------------------------------------------------------------*/
	Function _WRITE($id, $sess_data)
	{
		$MYSQL = $GLOBALS["MYSQL"];

		$MYSQL->QUERY("SELECT * FROM sessions WHERE sesskey='$id'");

		if($MYSQL->NUM_ROWS>0)
		{
			$MYSQL->QUERY("UPDATE sessions SET sessvalue='".addslashes($sess_data)."', modify=NOW() WHERE sesskey='$id'");
		} else {

			$MYSQL->QUERY("INSERT INTO sessions (sesskey, sessvalue, modify) VALUES ('$id','".addslashes($sess_data)."',NOW())");
		}

		Return (true);
	}
/*--------------------------------------------------------------------------------------------------------------------*/
	Function _DESTROY($id)
	{
		$MYSQL = $GLOBALS["MYSQL"];

		$MYSQL->QUERY("DELETE FROM sessions WHERE sesskey='$id'");

		Return (true);
	}
/*--------------------------------------------------------------------------------------------------------------------*/
	Function _GC($maxlifetime)
	{
		$MYSQL = $GLOBALS["MYSQL"];

		$MYSQL->QUERY("DELETE FROM sessions WHERE modify<FROM_UNIXTIME(UNIX_TIMESTAMP()-$maxlifetime)");

		Return (true);
	}
/*--------------------------------------------------------------------------------------------------------------------*/
}
?>

Aktiviert wird das ganze per

Code:
<?php
	$SESSCLASS = new SESSION;

   session_set_save_handler(
     array(&$SESSCLASS, '_OPEN'),
     array(&$SESSCLASS, '_CLOSE'),
     array(&$SESSCLASS, '_READ'),
     array(&$SESSCLASS, '_WRITE'),
     array(&$SESSCLASS, '_DESTROY'),
     array(&$SESSCLASS, '_GC')); 
?>
__________________
[visit Donvelopment.org]
PGP-KeyID: 0xBEC31126]
[Blog:Don's Blog]
DonTermi ist offline  
Alt 14.12.2005, 08:45  
Gast
 
Beiträge: n/a
Standard

wie haste es denn probiert? kann man denn mal ein Script sehn? ein art Probe-Script so zusagen? o.O
 
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
session_set_save_handler mysql, session_set_save_handler, session_set_save_handler klasse, session_set_save_handler php, session_set_save_handler oop, session_set_save_handler funzt nicht

Alle Zeitangaben in WEZ +2. Es ist jetzt 15:28 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.