我想在我发送信息的页面中对unique
进行编码,以便在其他页面中进行渲染。
在我的item.php
页面中,我做了这个
$id = uniqid($row["ppid"]); //id
$sef = $row["Sef"]; //id
$qstr = http_build_query(array("Sef" => $sef, "ppid" => $id));
?>
<a href="<?php fetchdir($apages) ?>product.php?<?= $qstr ?>">View</a>
在view.php page
if (isset($_GET['Sef']) && isset($_GET['ppid'])) {
$id = $_GET["ppid"];
$id2 = $_GET['Sef'];
页面无法呈现,因为ppid为uniqid
。有没有办法可以在此页面中对其进行解码,以便此页面可以在不丢失uniqid
代码的网址的情况下呈现信息?
感谢您的时间,评论和答案。
答案 0 :(得分:0)
根据您之前的问题,您只是想让“原始”ppid不那么明显。你的“编码”步骤需要是可逆的,你需要一个“解码”步骤,让你回到原来的ppid。
目前,您的编码步骤不可逆,并且您没有解码步骤。
以下是编码步骤的可逆版本:
$id = uniqid($row["ppid"]);
以下是view.php的“解码”步骤,它反转了“编码”:
$id = substr($_GET["ppid"], 0, -13); // remove 13-character uniqid
这比使用原始ppid更安全,但确实使产品ID看起来更令人印象深刻。