1

实际上这是一个简单的问题,但我可能无法向谷歌提出正确的问题。这是问题所在:

认为我有一个客户连接的网站。我为每个连接的客户端存储会话 ID(即 sbf1qql1qikvr4vnsvbomr1d61),我想使用这些会话 ID 检索 IP 地址。我正在运行一个 php 代码

root@34s:~# php checkSessions.php

在服务器机器上。并且checkSessions.php具有与以下代码类似的代码

//Enter an infinite loop
while(1)
{
            //Get session ids and user ids from the database 
    $q1 = $db->getQ("SELECT user_id, session_id, FROM all_sessions");
    foreach($q1 as $q)
    {
        if($q[0]==63)
        {
                         // Now, I need to get IP adress. I only have a session id
        }
    }

           // Wait 2 seconds and do the same procedure again 
       sleep(2);
}

那么,您能否提供任何方法来使用此会话 ID 找出客户端的 IP 地址。

4

1 回答 1

2

会话不存储 IP 地址或任何其他额外信息。您需要在会话启动时将其添加到会话中。IE:

session_start();
$_SESSION['ip'] = $_SERVER['REMOTE_ADDR'];
于 2012-11-15T00:22:39.187 回答