【问题标题】:Reading id from URL从 URL 读取 id
【发布时间】:2011-08-22 06:18:49
【问题描述】:

我的问题是关于使用 PHP 从 URL 中提取信息。 我正在构建的网站中有三个页面

catalogues.html

form_userdata.php

mail.php

架构如下。用户将选择从catalogues.html 下载的文件 例如

a href="form_userdata.php?id=1026&name=Vibrating Feeder - Heavy duty -VFH" target="_blank"

这个 id & name 将被传递给 form_userdata.php,在 form_userdata.php 页面中输入详细信息后,页面将控制权传递给mail.php,它将检查字段是否全部真实有效。

我的问题是如何在我的代码中使用“a href”中指定的 ID 和名称? 我从catalogues->form_userdata 传递ID 和名称并在mail.php 中收集它

感谢您的宝贵意见

【问题讨论】:

  • 当我添加 $id=$_POST['id'];在 form_userdata,我收到一条错误消息“未定义的索引:id”
  • @Vinne 你已经在这里问过类似的问题stackoverflow.com/questions/5946060/…
  • @vinner 这是一个 GET 变量,而不是一个 POST。试试 $_GET['id']
  • 查看print_r($_POST)的发布数据
  • @diEcho 我删除了它以避免任何混淆

标签: php html wamp identifier


【解决方案1】:

你可以在处理form_userdata.php的时候使用session来存储,然后在mail.php中使用。这样您就不必在每个 URL 中都传递它。

【讨论】:

    【解决方案2】:

    当我添加 $id=$_POST['id'];在 form_userdata,我收到一条错误消息 “未定义的索引:id”

    这很合乎逻辑,因为您在 URI 中传递它们,因此必须在 PHP 中使用 $_GET 来读取它们,即。做:

    $id = isset($_GET['id']) ? (int)$_GET['id'] : null;
    

    【讨论】:

    • @wimvids 看到你的评论后我做了一些阅读,发现开始一个新的会话将使它工作谢谢!
    【解决方案3】:

    您可以使用$_GET 来收集和传递变量

    【讨论】:

      【解决方案4】:

      您可以使用 $_GET 超全局变量访问 URL(查询字符串、查询信息部分)中的命名值。它将包含其名称的值:

      $_GET['id']
      

      更多信息在 PHP 手册中:$_GET。该页面已经非常具体,我建议您也阅读此手册页:Variables From External Sources 它更广泛地描述了这是如何工作的。

      由于输入在编程中非常重要,因此非常建议您了解它的工作原理,以便您可以更轻松地使用该语言来满足您的需求。

      【讨论】:

      • 感谢手册页 Hakre 我开始对 PHP 和网络有了更多的了解
      【解决方案5】:

      我找到了这个解决方案:

      session_start();
      
      $_SESSION['id'] = $id=$_GET['id'];
      
      $_SESSION['name'] = $name=$_GET['name'];
      

      这会将 ID 和 Name 的值传递到下一页。 谢谢你的帮助

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-05-10
        • 2012-10-03
        • 1970-01-01
        • 2012-05-22
        • 2019-04-17
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多