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

时间:2014-12-10 19:12:38

标签: php session guid user-registration

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

情景1

用户生成一个带有GUID的URL,用于标识用户。 GUID存储在数据库中。

方案2

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

用户的网址将如下所示

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

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

2 个答案:

答案 0 :(得分:0)

查看PHP Sessions以及一些可能的security problems,特别是在向网址添加GUID时。

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

如果它用于识别用户,通常应该不会被客户端修改/能够修改。保存HTML5 LocalStorage和Cookies以获取更多琐碎的事情,例如首选项或缓存数据。

答案 1 :(得分:0)

使用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变量。获取并存储

重命名&#34; php_script_that_you_use_for_saving_a_guid.php&#34;到您将用于保存GUID的实际文件和路径等。