php 服務器連接,PHP websocket服務器和mysql連接

我有一個基於this one的php websocket服務器。這個websocket服務器運行在與公共web服務器不同的apache上,但在相同的物理服務器上運行,所以我需要一個數據庫連接來檢索userdata。用戶數據由當前會話ID獲取,當用戶登錄時,該數據也會在數據庫中更新。現在,如果我運行我的websocket服務器,它的工作原理是完美的,但經過一段合適的時間(不能說時間跨度),結果保持空。我檢查了數據集。PHP websocket服務器和mysql連接

查詢字符串是最新的,正確的會話ID在數據庫中,它應該返回所需的行,但結果保持爲空。如果我殺死進程並運行這個websocket服務器,它將暫時工作,但過了一段時間後結果再次爲空。

這是我websocketserver.php簡化:

set_time_limit(0);

require 'class.PHPWebSocket.php';

$db1 = mysql_connect('localhost', 'dev', 'xxxxxxxx');

mysql_select_db('cb_dev',$db1);

function wsOnMessage($clientID, $message, $messageLength, $binary) {

global $Server;

$sessionid = "/*just imagine a session id here*/";

$result = mysql_query("SELECT username, id FROM users WHERE sessionid = '$sessionid'");

$row = mysql_fetch_row($result);

}

function wsOnOpen($clientID) {

//

}

function wsOnClose($clientID, $status) {

//

}

$Server = new PHPWebSocket();

$Server->bind('message', 'wsOnMessage');

$Server->bind('open', 'wsOnOpen');

$Server->bind('close', 'wsOnClose');

$Server->wsStartServer('0.0.0.0', 9010);

注:使用會話ID是正確投放,因此這不是問題。

2013-01-08

QQping

+0

你可以張貼在更新會話ID的用戶loggs時的代碼? –

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值