假设我有以下代码:
<td><a href="view_edit_form.php?id=<?php echo md5($row[0]);?>">Edit</a></td>
在页面view_edit_form.php
中,我使用此代码$ID = $_GET['id'];
问题
我无法得到id
,如果我md5
它就像这样。任何人请帮助我,谢谢。
答案 0 :(得分:2)
如果您只是想隐藏ID,我建议您使用两个可以在您的网址前后放置的代码。
$before_code = "8292273";
$after_code = "9388347";
如果你在你的id中使用了字符,那么混合几个
我假设$ row [0]是你的身份
<a href="view_edit_form.php?id=<?php echo $before_code.$row[0].$after_code; ?>">
Edit
</a>
如果您将前后代码设置为设定的长度,您可以随意更改它们,并使用substr
从开头和结尾删除设定数量的字符以获取您的ID。
如果您使用设置代码,则可以使用str_replace
或preg_replace
删除留下您身份的代码。
只要你保留自己的代码,大多数人都无法找到id,除非是那个人身份证,他们已经知道它是什么......这会浪费时间......
答案 1 :(得分:0)
使用mcrypt_encrypt()
和mcrypt_decrypt()
加密和解密数据。
答案 2 :(得分:0)
除非将md5
存储在$ID
的其他位置并进行检索,否则无法获取md5
哈希值。 (<td><a href="view_edit_form.php?id=<?php echo $row['id_hash'];?>">Edit</a></td>
是一种单向散列算法:请参阅here)。
你的source.php可能需要看起来像:
<td><a href="view_edit_form.php?id=79054025255fb1a26e4bc422aef54eb4">Edit</a></td>
您呈现的HTML可能如下所示:
source.php
在您的 view_edit_form.php
文件AND $ID
中,您需要调用您的数据库(这通常不会存储在数据库)根据所讨论的md5
哈希检索哈希值(或{{1}})。
使用不同的哈希算法可能会更好,但md5通常可用于基本安全/模糊处理 - 但这些天加密密码不。它几乎取决于security的含义。
希望这会有所帮助。