断开连接PHP套接字发送消息?

时间:2012-09-28 04:15:10

标签: php actionscript-3 flash sockets

我有一个用PHP创建的套接字,我在flash / as3中连接。它的工作率为99%,但是......

$bytes = socket_recv($socket, $buffer, 2048, 0);
if ($bytes == 0) {
    //User disconnects
    $index = array_search($socket, $read_sockets);
    $tehEC = socket_last_error();
    $CID = $read_sockets[$index];
    $DNAME = $DB->db->query("SELECT * FROM chat_online WHERE connectid='$CID'");
    $BROW = $DB->db->fetch_array($DNAME);
    $BNAME = $BROW['user_name'];
    $DB->db->query("DELETE FROM chat_online WHERE connectid='$CID'");
    echo "dc " . $tehEC . "\n";
    send_Message($allclients, $socket, $BNAME . ": /disconnected " . $BNAME); <-- WILL NOT SEND
    unset($read_sockets[$index]);
    send_Message($allclients, $socket, $BNAME . ": /disconnected " . $BNAME); <-- WILL NOT SEND 
    socket_close($socket);
}

所以当用户断开连接时,我已经能够触发一个事件,但是这条线不发送会让我的生活变得非常困难:(请帮忙吗?我需要它发送给其他客户,所以我可以删除用户。再次,如何让套接字服务器向所有仍然在线的客户端发送消息,以便他们知道从列表中删除断开连接的用户。

1 个答案:

答案 0 :(得分:0)

实际上问题是我需要将chr(0)添加到字符串的末尾以使其发送。感谢您的回复。