Ho un server websocket PHP (https://github.com/lemmingzshadow/php-websocket/).
Quando un utente si connette, desidero impostare/recuperare alcuni dati di sessione.
Il problema è che non posso usare $_SESSION
perché se lo faccio, invece della sessione dei client ottengo la sessione del mio server websocket.
Sono riuscito a ottenere SESSID clienti:
private function handshake($data) {
$this->log('Performing handshake');
if(preg_match("/PHPSESSID=(.*?)(?:;|\r\n)/", $data, $matches)){
$sessid = $matches[1];
}
/* Do handshake */
}
Ma ora non so come ottenere i dati di sessione relativi a tale SESSID.
Sembra che tu abbia bisogno di una sorta di database di sessione che ti permetta di condividere sessioni tra le due istanze. –
@StevenV Ma, devo usare il mio db, o posso accedere al db dove php salva i dati della sessione? – Oriol
fare in modo che il client invii il proprio ID di sessione sul socket, quindi è possibile utilizzarlo per impostare l'ID in php prima di fare session_start –