gpt4 book ai didi

php - 创建访问者唯一 ID?

转载 作者:可可西里 更新时间:2023-11-01 13:15:42 26 4
gpt4 key购买 nike

我计划创建访问者唯一 ID 并命名为日志文件,因为现在我使用 IP 访问者作为日志文件名,即 logs/127.0.0.1.php 但我认为这还不够足够因为有些访问者使用共享 PC 的 IP 地址。

访问者日志文件本身作为访问者本身配置的设置位置,所以我打算添加另一个唯一的 ID 来识别每个不同的访问者所以让我们说日志文件:logs/127.0.0.0.1-t3451dq.php, -t3451dq 作为唯一 ID所以只要访问者在我的网站上浏览唯一的日志文件作为每个用户的设置配置(因为我使用纯文本)

目前我使用:

<?
$filename = "./logs/".$_SERVER['REMOTE_ADDR'].".php" ; //out put logs/127.0.0.1.php
$data stripcslashes($data);
// each Visitor configuration here...
// bla...bla...

/* Writing file configurations */
$buat = fopen($filename, "w+");
fwrite($buat, "$data");
fclose($buat);
?>

所以我需要 $filename 添加 $unique ID 作为他们的日志文件的名称。有什么想法吗?

最佳答案

尝试 uniqid .

您可以将此唯一 ID 存储在用户 session 或 cookie 中。

示例(未测试)

session_start();
if(!isset($_SESSION['uniqueID']))
{
$_SESSION['uniqueID'] = uniqid();
}
$filename = "./logs/".$_SESSION['uniqueID'].$_SERVER['REMOTE_ADDR'].".php" ;

使用 session 意味着如果同一用户关闭浏览器(或 session 过期),他们将获得一个新 ID,这可能是您想要的,也可能不是您想要的。

如果您想要一个更持久的跟踪器,那么您最好使用 cookie,并将 ID 存储在 cookie 中(如果不存在 cookie,则创建一个新 ID)。

if(!isset($_COOKIE['uniqueID']))
{
$expire=time()+60*60*24*30;//however long you want
setcookie('uniqueID', uniqid(), $expire);
}
$filename = "./logs/".$_COOKIE['uniqueID'].$_SERVER['REMOTE_ADDR'].".php" ;

如果您不能使用 cookies/session,那么您可能需要在 URL 查询字符串中传递 ID,例如mypage.php?id=35dfgdfg3434

关于php - 创建访问者唯一 ID?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1865873/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com