如何访问传递给下一页的参数

How to access parameters that were passed to next page

作为我的要求的一部分,我构建了 href link 和一个与之关联的变量,如下所示

<h5><a href="http://working.artefacts.co.in/single.php?',$ID,'"> ', $NAME, '</a></h5>

点击后,页面被正确重定向到 single.php,甚至可以在浏览器上看到 $ID 值。

但是我不知道如何在single.php

中提取ID参数

任何人都可以告诉我如何访问 single.php 页面中的 $ID 值

<h5><a href="http://working.artefacts.co.in/single.php?id='.$ID.'"> ', $NAME, '</a></h5>

<?php echo $_REQUEST['id']; ?>
', $NAME, '

PHP $_GET 也可用于在使用 method="get".

提交 HTML 表单后收集表单数据

$_GET也可以收集在URL.

中发送的数据

假设我们有一个 HTML 页面,其中包含带有参数的 hyperlink:

<a href="test_get.php?subject=PHP&web=W3schools.com">Test $GET</a>

当用户点击 link "Test $GET" 时,参数 "subject" 和 "web" 被发送到 "test_get.php",然后您可以在 [=26] 中访问它们的值=] 与 $_GET.

假设 $ID 设置为 2,则您的 URL 为:

http://working.artefacts.co.in/single.php?2

因此,在您的 single.php 页面中您必须写:

$id = $_SERVER['QUERY_STRING'];

您可以使用诸如会话、cookie 或 GET / POST 变量之类的东西。会话和 cookie 非常容易使用,会话比 cookie 安全得多。更安全,但不完全安全。

会话:

//On page 1
$_SESSION['varname'] = $var_value;

//On page 2
$var_value = $_SESSION['varname'];

请记住在您尝试访问 $_SESSION 数组之前以及在将任何输出发送到浏览器之前,在这两个页面上使用 运行 session_start() 语句。

Cookie:

//One page 1
$_COOKIE['varname'] = $var_value;

//On page 2
$var_value = $_COOKIE['varname'];

GET 和 POST

您可以将 link 中的变量添加到下一页:

<a href="page2.php?varname=<?php echo $var_value ?>">Page2</a>

这将创建一个 GET 变量,或在提交到第二页的表单中包含一个隐藏字段:

<form method="get" action="page2.php">
    <input type="hidden" name="varname" value="var_value">
    <input type="submit">
</form>

然后是第二页

//Using GET
$var_value = $_GET['varname'];

//Using POST
$var_value = $_POST['varname'];

//Using GET, POST or COOKIE.
$var_value = $_REQUEST['varname'];

如果您想通过 post 完成,只需将表单的方法更改为 post。两者同样不安全,尽管 GET 更容易破解。