簡體   English   中英

如何根據查詢字符串使特定頁面部分可見

[英]How do I make a specific page section visible based on the querystring

我想要一個包含3個部分的頁面:

<?php
session_start();
if (isset($_SESSION['login'])) {
    echo "Work";
    $_GET['id'] = 'edit';
?>
<a href="protected.php?if=edit">Edit post</a>
<?php
}
else {
    echo "notWork";
}
if (isset($_GET['id']) && $_GET['id'] == 'edit') {
    echo "Editing  . . .";
}?>

但是我不知道該怎么做的頁面“編輯”,只有當我們去鏈接protected.php?if=edit時才可見。

ok.simply檢查您的頁面引用此代碼:

$_SERVER['HTTP_REFERER']

更多文檔在這里http://php.net/manual/zh/reserved.variables.server.php

我認為您應該使用$_GET['if']而不是$_GET['id']因為url參數名為if

因此,如果我轉到頁面protected.php ,並且參數ifedit ,請更改代碼。 有錯字!

<?php
    if (isset($_GET['if']) && $_GET['if'] == 'edit') {
        echo "Editing  . . .";
    }
?>

您可以根據通過URL傳遞的ID來包含編輯頁面。 類似於: if($_GET['id'] == edit) include('edit.php')

但是,這樣做無需進一步檢查,每個人都可以通過猜測id的正確值來查看頁面。 因此,您寧願在每次添加內容時都要對用戶權限進行檢查。

如果要從url讀取傳遞的值,則可以使用$ _GET ['if']或$ _REQUEST ['if']獲取該值。

另外,正如您所說的“具有3個部分的頁面”一樣,所以我認為您希望僅在部分時間顯示,那么您應該使用elseif => http://php.net/manual/zh/control-structures.elseif.php

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM