[ Príspevkov: 2 ] 
AutorSpráva
Offline

Užívateľ
Užívateľ
alternativne odkladanie sessions

Registrovaný: 02.07.06
Prihlásený: 18.08.14
Príspevky: 1696
Témy: 137 | 137
Bydlisko: Slovakia - ...
NapísalOffline : 24.10.2007 14:41 | alternativne odkladanie sessions

zdravim,
ako dosiahnem nieco podobne? trebars odkladanie do db ( napr. mysql) je nieco taketo mozne? myslim ze jo a ako to dosiahnem?
dik


_________________
Zivot je jednoduchy , staci sa rozhodnut a neobzerat sa spat. Poriadok je pre blbcov, inteligent zvlada chaos.
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 09.02.07
Prihlásený: 26.01.15
Príspevky: 257
Témy: 20 | 20
NapísalOffline : 24.10.2007 16:13 | alternativne odkladanie sessions

No, ideu mozes skusit najst v tomto kode:

Kód:
<?
/* ------------------------------------------------------------------------
 * session_mysql.php
 * ------------------------------------------------------------------------
 * PHP4 MySQL Session Handler
 * Version 1.00
 * by Ying Zhang (ying@zippydesign.com)
 * Last Modified: May 21 2000
 *
 * ------------------------------------------------------------------------
 * TERMS OF USAGE:
 * ------------------------------------------------------------------------
 * You are free to use this library in any way you want, no warranties are
 * expressed or implied.  This works for me, but I don't guarantee that it
 * works for you, USE AT YOUR OWN RISK.
 *
 * While not required to do so, I would appreciate it if you would retain
 * this header information.  If you make any modifications or improvements,
 * please send them via email to Ying Zhang <ying@zippydesign.com>.
 *
 * ------------------------------------------------------------------------
 * DESCRIPTION:
 * ------------------------------------------------------------------------
 * This library tells the PHP4 session handler to write to a MySQL database
 * instead of creating individual files for each session.
 *
 * Create a new database in MySQL called "sessions" like so:
 *
 * CREATE TABLE sessions (
 *      sesskey char(32) not null,
 *      expiry int(11) unsigned not null,
 *      value text not null,
 *      PRIMARY KEY (sesskey)
 * );
 *
 * ------------------------------------------------------------------------
 * INSTALLATION:
 * ------------------------------------------------------------------------
 * Make sure you have MySQL support compiled into PHP4.  Then copy this
 * script to a directory that is accessible by the rest of your PHP
 * scripts.
 *
 * ------------------------------------------------------------------------
 * USAGE:
 * ------------------------------------------------------------------------
 * Include this file in your scripts before you call session_start(), you
 * don't have to do anything special after that.
 */

$SESS_DBHOST = "localhost";         /* database server hostname */
$SESS_DBNAME = "sessions";         /* database name */
$SESS_DBUSER = "phpsession";      /* database user */
$SESS_DBPASS = "phpsession";      /* database password */

$SESS_DBH = "";
$SESS_LIFE = get_cfg_var("session.gc_maxlifetime");

function sess_open($save_path, $session_name) {
   global $SESS_DBHOST, $SESS_DBNAME, $SESS_DBUSER, $SESS_DBPASS, $SESS_DBH;

   if (! $SESS_DBH = mysql_pconnect($SESS_DBHOST, $SESS_DBUSER, $SESS_DBPASS)) {
      echo "<li>Can't connect to $SESS_DBHOST as $SESS_DBUSER";
      echo "<li>MySQL Error: ", mysql_error();
      die;
   }

   if (! mysql_select_db($SESS_DBNAME, $SESS_DBH)) {
      echo "<li>Unable to select database $SESS_DBNAME";
      die;
   }

   return true;
}

function sess_close() {
   return true;
}

function sess_read($key) {
   global $SESS_DBH, $SESS_LIFE;

   $qry = "SELECT value FROM sessions WHERE sesskey = '$key' AND expiry > " . time();
   $qid = mysql_query($qry, $SESS_DBH);

   if (list($value) = mysql_fetch_row($qid)) {
      return $value;
   }

   return false;
}

function sess_write($key, $val) {
   global $SESS_DBH, $SESS_LIFE;

   $expiry = time() + $SESS_LIFE;
   $value = addslashes($val);

   $qry = "INSERT INTO sessions VALUES ('$key', $expiry, '$value')";
   $qid = mysql_query($qry, $SESS_DBH);

   if (! $qid) {
      $qry = "UPDATE sessions SET expiry = $expiry, value = '$value' WHERE sesskey = '$key' AND expiry > " . time();
      $qid = mysql_query($qry, $SESS_DBH);
   }

   return $qid;
}

function sess_destroy($key) {
   global $SESS_DBH;

   $qry = "DELETE FROM sessions WHERE sesskey = '$key'";
   $qid = mysql_query($qry, $SESS_DBH);

   return $qid;
}

function sess_gc($maxlifetime) {
   global $SESS_DBH;

   $qry = "DELETE FROM sessions WHERE expiry < " . time();
   $qid = mysql_query($qry, $SESS_DBH);

   return mysql_affected_rows($SESS_DBH);
}

session_set_save_handler(
   "sess_open",
   "sess_close",
   "sess_read",
   "sess_write",
   "sess_destroy",
   "sess_gc");
?>


Pripadne sa daju kombinovat php session a databaza, kde php session (napr. session id) ukladas do databazy (spolu s dalsimi vecickami -> mozes napr user agenta, nejaky secret key atd.) a nasledne ich na kazdej secret stranke porovnavas ... mozes to potom rozsirit o session history, prave aktivny ludia atd atd


 [ Príspevkov: 2 ] 


alternativne odkladanie sessions



Podobné témy

 Témy  Odpovede  Zobrazenia  Posledný príspevok 
V tomto fóre nie sú ďalšie neprečítané témy.

alternativne metody chladenia

v Chladiče a všetky druhy chladenia

11

502

12.03.2009 16:52

tommy1104

V tomto fóre nie sú ďalšie neprečítané témy.

Alternativne lacne byvanie

[ Choď na stránku:Choď na stránku: 1 ... 6, 7, 8 ]

v Život, životný štýl, móda, bývanie

228

11195

02.03.2013 22:11

Vlad

V tomto fóre nie sú ďalšie neprečítané témy.

Alternatívne uchytenie CPU chladiča

v Chladiče a všetky druhy chladenia

1

140

18.02.2016 15:40

liqua1

V tomto fóre nie sú ďalšie neprečítané témy.

Dlzka kablov (alternativne umiestnenie PC)

v Ostatné

1

242

17.12.2010 9:11

KocuR

V tomto fóre nie sú ďalšie neprečítané témy.

I/P: Alternativne HP Tonery Q6003A

v Predám

0

96

26.10.2011 14:04

mysko

V tomto fóre nie sú ďalšie neprečítané témy.

sessions

v PHP, ASP

11

422

26.02.2011 21:25

venom2

V tomto fóre nie sú ďalšie neprečítané témy.

Dvojrozmerne sessions

v PHP, ASP

11

377

09.01.2009 22:20

jaji

V tomto fóre nie sú ďalšie neprečítané témy.

Sessions help

v PHP, ASP

3

274

12.07.2007 11:14

TECHNODROME

V tomto fóre nie sú ďalšie neprečítané témy.

ochrana sessions

v PHP, ASP

22

698

23.02.2011 18:31

chrono

V tomto fóre nie sú ďalšie neprečítané témy.

sessions error

v PHP, ASP

8

394

14.11.2008 18:39

Slappy

V tomto fóre nie sú ďalšie neprečítané témy.

Sessions chyba???

v PHP, ASP

3

242

05.11.2007 19:10

pepek92

V tomto fóre nie sú ďalšie neprečítané témy.

Problém so SESSIONs

v PHP, ASP

3

406

07.01.2012 21:41

hal_sk

V tomto fóre nie sú ďalšie neprečítané témy.

sessions-nejde odstranit

[ Choď na stránku:Choď na stránku: 1, 2 ]

v PHP, ASP

34

1199

01.10.2008 21:10

dadmtb

V tomto fóre nie sú ďalšie neprečítané témy.

PHP a SESSIONS

v PHP, ASP

2

276

28.10.2007 14:22

tatysp

V tomto fóre nie sú ďalšie neprečítané témy.

Problém so sessions

v PHP, ASP

1

186

25.12.2011 22:00

chrono

V tomto fóre nie sú ďalšie neprečítané témy.

Remove Duplicate Sessions

v Redakčné systémy

0

330

14.10.2006 14:49

JanoF



© 2005 - 2017 PCforum, edited by JanoF