-1

我在我的页面中设置了一个日期变量,我想将它发布到另一个页面。

这是第一页中的 PHP 代码:

<?php if(isset($date)) { echo $date; ?>

<form action="new.php" method="POST">
<input type="hidden" name="date" id="date" value="<?php echo htmlentities ($date); ?>">
</form>

<?php } ?>

$date 在请求中设置日期时会回显,因此没有问题。

在新的.php

$mydate = $_GET['date'];

但是当我在 new.php 中转储数据时,我得到的只是 NULL。

我想专门使用隐藏的表单输入或任何其他不涉及使用会话的解决方案来做到这一点。

这似乎很重要我做错了什么?我检查了我的控制台,那里没有错误。

更新

<?php if(isset($date)) { echo $date; ?>

<form name="dateform" id="dateform" action="news_detail.php" method="POST">
<input type="hidden" name="date" id="date" value="<?php echo htmlentities ($date); ?>">

</form>

在我的脚本中:

document.dateform.submit();
4

5 回答 5

2

你需要使用POST,因为你的<form>标签有 action 方法POST

$mydate = $_POST['date'];

简单的插图

<?php
@extract($_POST);
if(isset($submit)) {
    echo $_POST['date'];
}
 ?>

    <form action="" method="POST">
        <input type="hidden" name="date" id="date" value="23-4-2025">
        <input type='submit' name='submit'>
    </form>
于 2013-10-30T05:46:46.763 回答
1

$_GET用于获取数据。

$_POST用于 POST 数据。

$_COOKIE用于 COOKIE 数据。

$_REQUEST用于 ^ALL^ 数据。

于 2013-10-30T05:47:33.123 回答
0

您正在使用 POST 方法从第一页和第二页传递变量,您正在使用 $_POST[]...

像这样翻第二页

 $mydata=$_POST['data'] will work

并使用提交按钮将数据发送到new.php

<input type="submit" name="submit" value="Send"/>
于 2013-10-30T05:47:12.220 回答
0

因为你使用post方法。正确获取数据作为相同的方法,即post。如果你不确定你使用哪种方法你也可以使用$_REQUEST。但是后者有一些安全问题。

<?php if(isset($date)) { echo $date; ?>
<form action="new.php" name="myform" method="POST">
<input type="hidden" name="date" id="date" value="<?php echo htmlentities ($date); ?>">
<input type="submit" value="submit">
</form>
<?php } ?>

比在 new.php 中使用以下代码获取数据

$mydate = $_POST['date'];

使用 javascript(无需使用提交按钮): 无需提交按钮即可发送数据(Javascript / jQuery)

于 2013-10-30T05:47:17.603 回答
0

必须在 $date 中有一些值才能进入您的表单部分

page1.php

$date ="some date";

<?php if(isset($date)) { echo $date; ?>

    <form action="new.php" method="POST">
    <input type="hidden" name="date" id="date" value="<?php echo htmlentities ($date); ?>">
    </form>

    <?php } ?>

现在 new.php,在 page1.php 上提交

echo $mydate = $_POST['date'];
于 2013-10-30T05:56:38.007 回答