如何在整个项目中访问/使用生成的 GUID


How do I access/use the generated GUID in the whole project?

我正在使用PHP和HTML项目,有两种情况。

场景 1

用户生成一个 URL,其中包含标识用户的 GUID。GUID 存储在数据库中。

场景 2

如果用户访问具有已生成 GUID 的页面,我希望能够从 URL 获取 GUID 并在整个项目中使用它。

用户的网址将如下所示

http://localhost/mini/album/index/GUID eg http://localhost/mini/album/index/6957da07-7cd0-4f0e-a300-fa9ecdf79d0a

我知道我将如何从 url 获取 guid 以及用户何时生成新的 guid,但只要用户访问页面,我就将其临时存储在哪里?我正在考虑使用全局变量、HTML5 本地存储,或者是否可以为此使用会话。您认为什么是最佳解决方案,您还有其他建议吗?

查看 PHP 会话以及一些可能的安全问题,尤其是将 GUID 添加到 URL 时。

<?php
session_start()
$_SESSION['GUID'] = get_guid();
....
echo "GUID is {$_SESSION['GUID']}";

如果它用于标识用户,则客户端通常不应看到/无法对其进行修改。保存HTML5 LocalStorage和Cookie,用于更琐碎的事情,如首选项或缓存数据。

使用 apache 重写。 在您的 .htaccess 文件中,执行以下操作:

RewriteEngine On
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteRule ^mini/album/index/([A-Za-z0-9-]+)$ /php_script_that_you_use_for_saving_a_guid.php?GUID=$1 [QSA,L]

其中 GUID 是 $_GET 变量。 获取并存储

将"php_script_that_you_use_for_saving_a_guid.php"重命名为将用于保存 GUID 的实际文件和路径等。