【问题标题】:PHP: Load content dynamically based on the link clicked on the previous page?PHP:根据上一页点击的链接动态加载内容?
【发布时间】:2012-02-02 22:56:50
【问题描述】:

在过去的 24 小时里,我一直在用 Google 搜索这个,差不多。尽管我知道它被广泛使用,但我似乎找不到适合我的方案的答案。

我的网站的一页(我们称之为“第 1 页”)上有很多链接,我希望他们都转到一个空白页(以及这个“第 2 页”),然后动态获取内容加载,取决于在上一页点击了什么链接。

我所知道的是,我需要能够使用第 1 页上的超链接设置 PHP 变量,并在第 2 页上使用某种if(isset($_SESSION['phpVariable'])){ include('path/content.fileExt')},以便它准备好接收变量并相应地加载内容。

我只是不知道该怎么做,因为我昨天才开始学习 PHP。帮助? :( :L

【问题讨论】:

    标签: php dynamic session


    【解决方案1】:

    您可以使用$_GET[] 变量。在第 1 页上,链接可能是 page2?food=baconpage2?food=foo。在 page2 上,您可以说...

    if ($_GET['food']=='bacon')
    {
      // Stuff here that prints what you want.
    }
    elsif ($_GET['food']=='foo')
    {
      // Stuff here that prints what you want.
    }
    

    【讨论】:

    • 完美!太感谢了! ^.^ 我确实在某处读到过,任何不使用 $_SESSION 的变量都是不安全的。这是真的吗?
    • $_GET[] 变量传递 URL 中的信息,因此您不希望使用 get 传递密码等信息。
    • 那么我应该从一开始就学习更安全的方法吗?你知道,作为好的做法?
    • 为此,除非您使用 ajax,否则 $_SESSION[] 将无法工作,因此我将使用 $_GET[]。但是,对于设置需要由其他页面访问的变量,使用$_SESSION[] 会是一个好主意。
    【解决方案2】:

    您可以通过 URL 传递要加载的内容的标识符。

    例如: 将 GET 参数之一的值设置为第 2 页内容的标识符

    <a href="page2.php?pageid=content">Link to Page 2</a>

    然后在第 2 页中检查值并相应地加载内容。

    include_once 'content/' . $_GET['pageid'];
    

    【讨论】:

      【解决方案3】:

      http://www.w3schools.com/php/php_get.asp

      www.example.com/index.php?page=something_here

      $_get["page"] 
      

      将返回“something_here”

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-09-28
        • 1970-01-01
        • 2012-09-29
        • 1970-01-01
        相关资源
        最近更新 更多