我是php新手,需要了解post get方法对我的代码有用。我的情况是,我有3个网页,第一个网页是一个html表单,我在这里使用post方法然后我从表单中获取名字和姓氏,并在第二个网页上输入一个sql查询(例如$_POST[firstname]
)为我生成一些数据,我正在打印这些数据。
现在我需要将相同的参数传递给第3页,根据第一个HTML表单中输入的名字和姓氏生成一些图表?
如何在第3个php页面上保留这些值?我在网页上引用了第3页的网址,我认为这还不够,我尝试了Google搜索并发现帖子获取可能有用,但需要一些专家建议。
由于
答案 0 :(得分:2)
您可以使用以下内容:
第1页(page1.php)
<form action="page2.php" method="post">
<input type="text" name="firstname" value="" />
<input type="text" name="lastname" value="" />
<input type="submit" value="Submit" />
</form>
2nd(page2.php)
检索并验证$_POST['firstname']
和$_POST['lastname']
,然后使用所需数据创建输出,您可以根据需要使用隐藏字段或创建链接。例如:
$firstname = $_POST['firstname'];
$lastname = $_POST['lastname'];
// Output with links can pass data by GET method
echo '<a href="page3.php?firstname='.$firstname.'&lastname='.$lastname.'"></a>';
// Output with hidden fields, you can use POST or GET method or even Javascript/Ajax
echo '
<form action="page3.php" method="get">
<input type="hidden" name="firstname" value="'.$firstname.'" />
<input type="hidden" name="lastname" value="'.$lastname.'" />
<input type="submit" value="Submit" />
</form>';
第3页(page3.php)
如果您使用带有链接或带有GET方法的表单的解决方案,您可以在page3.php
中检索数据,只需执行以下操作:
$firstname = $_GET['firstname'];
$lastname = $_GET['lastname'];
希望它可以帮到你!
答案 1 :(得分:1)
使用PHP会话在PHP页面之间存储数据。或者,您可以将已添加的数据提取到数据库中。
答案 2 :(得分:0)
您需要使用$_SESSION
变量。
答案 3 :(得分:0)
我能想到的一种方法是将第一页的值放到第二页上的隐藏字段中,该字段将与第二页上的表单一起提交:
<form action="page3.php" method="post">
<input type="hidden" name="firstname" value="<?php echo $_POST['firstname']; ?>" />
<input type="hidden" name="lastname" value="<?php echo $_POST['lastname']; ?>" />
<input type="submit" value="Submit" />
</form>
当然,您希望确保验证和清理您的输入等,如果这些输入进入数据库,或者可能影响您网站的安全性和持久性。