použití session bez nette aplikace

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
jirkaf
Člen | 4
+
+1
-

V některé ze starých verzích nette se dala použít session samostatně bez nette aplikace pomocí kódu:

//	session
$sess = Environment::getSession();
$sess->setExpiration('+ 14 days');	// sezení vyprší po 14 dnech neaktivity
$sess->setSavePath(SYS_DIR.'data/sessions/');	// soubory session se hromadí v tomto adresáři, udržuje ho garbage collector
$sess->setCookieParams($path, $domain = NULL, $secure = NULL);	// volitelné nastavení parametrů cookie
$session = $sess->getNamespace('data');
$sessAuth = $sess->getNamespace('auth');

Jak to lze používat session samostatně v současné verzi nette?

CZechBoY
Člen | 3608
+
0
-

Moc nechápu jak můžeš používat Nette třídy/metody bez Nette.

Myslel si bez presenteru?

jirkaf
Člen | 4
+
0
-

Asi…

Zkrátka v daném webu se z nette používají jen šablony a session. Zbytek si řeší web po svym. Definice/konfigurace šablon se mi podařilo překopat tak, aby to šlo používat s novým nette. Se session sem zatím neuspěl.

Tomáš Votruba
Moderator | 1114
+
+1
-

Ahoj, takto by vypadal minimální jednoduchý setup s Nette 2.3:

require __DIR__ . '/vendor/autoload.php'; // composer's autoload

$requestFatory = new Nette\Http\RequestFactory;
$request = $requestFatory->createHttpRequest();
$response = new Nette\Http\Response;

$session = new Nette\Http\Session($request, $response);

// your setup

$someSection = $session->getSection('someSection');

$someSection->value = 5;
var_dump($someSection->value); // "5"

Editoval Tomáš Votruba (16. 10. 2015 11:51)

jirkaf
Člen | 4
+
0
-

Ahoj,

mockrát díky za pomoc. Chyběl mi doo skládačky tenhle řádek:

$request = $requestFatory->createHttpRequest();