php编码带小写字母的url参数

时间:2013-04-30 14:44:07

标签: php url encryption

我正在努力加密url参数。我有以下网址:

http://www.domain.com/show_user.php?uid=45&s=photos

http://www.domain.com/show_user.php?uid=454&s=information

现在我不希望用户看到参数'uid'和's'的普通值,所以我用base64_encode加密它们。

http://www.domain.com/show_user.php?uid=NDU=&s=cGhvdG9z

http://www.domain.com/show_user.php?uid=NDU0&s=aW5mb3JtYXRpb24=

但是现在我遇到的问题是我在URL中有一些大写字母。我的错误日志我发现错误是由请求只有小写字母的网址引起的:

http://www.domain.com/show_user.php?uid=ndu=&s=cghvdg9z

这会导致错误,因为字符串不能再解密了。

这显然不是加密url中参数的非常智能的解决方案。你会建议什么?你使用什么加密方法?哪一个只创建小写字母?

我已经提前非常感谢你的任何帮助:)

致以最诚挚的问候,

弗雷迪

3 个答案:

答案 0 :(得分:0)

代码中某处必须有strtolower(),地址本身不能小写。检查生成这些编码字符串的代码。

另外 - 正如该评论所述,它不是加密。从功能上来说,这实际上需要加密,还是只是模糊不清?

答案 1 :(得分:0)

如果您只有这两个参数,我建议您自己编写一个编码&编码功能。您还可以将所有参数压缩为仅一个,然后使用拆分字符串函数再次对其进行解码。

答案 2 :(得分:0)

如果此信息在某种程度上是您不想共享的秘密,请创建用于将某些ID映射到此信息的表,并从这些条目生成页面。但是你对编码的需求还不清楚,所以请详细说明。