2013-07-30 60 views
0

嗨,我不是編碼unique在頁面中,我在其中發送信息到其他頁面呈現。解碼uniqid在其他渲染頁面

在我item.php頁我在view.php page

if (isset($_GET['Sef']) && isset($_GET['ppid'])) { 
    $id = $_GET["ppid"]; 
    $id2 = $_GET['Sef']; 

頁這樣做

$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> 

不會呈現,因爲PPID是uniqid是他們的方式,我可以在此頁面對其進行解碼,從而該頁面可以呈現沒有url丟失uniqid代碼的信息?

謝謝你的時間,評論和答案。

+0

不是100%確定你的問題,但.htacces mod_rewrite可以幫助你 – Jonnny

+0

@Jonnny如果1的ppid和我使用uniqid它會像'151f80931ba1f9'所以在我的view.php中它會得到' uniqid'而不是'1',頁面將不會呈現。 – Jessica

+0

@Jonnny如果你認爲.htaccess可以是helo你可以告訴我 – Jessica

回答

0

根據你以前的問題,你只是試圖讓「生」ppid不那麼明顯。你的「編碼」步驟需要是可逆的,你需要一個「解碼」步驟,讓你回到原來的ppid。

當前您的編碼步驟不可逆,並且您沒有解碼步驟。

這裏是編碼步驟的可逆版本:

$id = uniqid($row["ppid"]); 

這裏是一個「解碼」用於view.php步驟,其反轉「編碼」:

$id = substr($_GET["ppid"], 0, -13); // remove 13-character uniqid 

這不是任何比使用原始ppid更安全,但確實使產品ID看起來更令人印象深刻。

+0

感謝您對此問題的關注,只是爲了混淆視聽。在'item.php'頁面中,我使用'$ id = $ row [「ppid」]。 uniqid($ row [「ppid」]);'並在'view.php'頁面中使用'$ id = substr($ _ GET [「ppid」],0,-13);'?如果是的話,我已經嘗試了,它似乎並沒有工作 – Jessica

+0

我回應'$ id',如果pid是1,它顯示'11',如果它的2它應該'22' – Jessica

+0

,因爲我至少有15產品在這個表中,它不會工作,因爲任何超過9,它不能解碼它。順便說一句,請將'-13'改爲'-14'。 – Jessica