我是PHP的新手。
我想在页面之间传输数据。
根据我的要求,我首先拥有主页,因为我有3个字段:名称,地址, pin 然后提交按钮。
当我输入上述字段然后点击提交时,它会移至page2.php
,它有表单数据。
我已将第一张表格数据转移到第二页。现在在第二页我有一个提交按钮。当我点击该按钮时,数据将被提交到MySQL数据库。
我的问题是,如何将首页值移至insertdata.php
页并提交数据?
答案 0 :(得分:5)
有两种方法可以做到这一点
要将数据从一个页面传递到另一个页面,首先需要在将要使用session_start()
超全局变量的所有页面上调用$_SESSION
。
然后,您可以使用
$_SESSION['name'] = $_POST['name'];
$_SESSION['address'] = $_POST['address'];
$_SESSION['pin'] = $_POST['pin'];
要在第二页中使用这些值,只需按名称调用它们即可。例如:
$name = $_SESSION['name']; // will contain the value entered in first page
=============================================== ===================================
这更多是一种乏味的方法,但它确实完成了这项工作。该过程涉及将需要传递的数据存储到隐藏字段中的不同页面,然后通过$_POST
或$_GET
超全局访问它们。
page1.php (发布到page2.php)
<input type="text" value="Page 1 content" name="content" />
<input type="text" value="Page 1 body" name="body" />
page2.php (发布到page3.php)
<input type="hidden" value="<?php echo $_POST['content']; ?>" name="content" />
<input type="hidden" value="<?php echo $_POST['body']; ?>" name="body" />
<input type="text" value="Page 2 content" name="content2" />
<input type="text" value="Page 2 body" name="body2" />
<强> page3.php 强>
echo $_POST['content']; // prints "Page 1 content"
echo $_POST['body']; // prints "Page 1 body"
echo $_POST['content2']; // prints "Page 2 content"
echo $_POST['body2']; // prints "Page 2 body"
答案 1 :(得分:1)
只需在首页<?php session_start(); ?>
中使用以下代码
并在您的第二页中使用以下代码
<?php
$name = $_SESSION['name'];
$address = $_SESSION['address'];
$pin = $_SESSION['pin'];
echo $name."<br/>";
echo $address."<br/>";
echo $pin."<br/>";
?>
或者您可以使用post
或get
方法,如下所示
对于GET方法
<?php
$name = $_GET['name'];
$address = $_GET['address'];
$pin = $_GET['pin'];
echo $name."<br/>";
echo $address."<br/>";
echo $pin."<br/>";
?>
对于POST METHOD
<?php
$name = $_POST['name'];
$address = $_POST['address'];
$pin = $_POST['pin'];
echo $name."<br/>";
echo $address."<br/>";
echo $pin."<br/>";
?>
答案 2 :(得分:0)
与REQUEST
类似,PHP维护会话映射,您可以在其中转储这些值以及跨页面。
e.g。
$_SESSION['name']='foo';
但是您想要使用会话的页面,您需要使用方法session_start();
启动会话。但是这个方法调用应该是你php中的第一行。
答案 3 :(得分:0)
要在页面更改之间存储数据,可以使用超全局$ _SESSION数组。
实施例
Page 1
$_SESSION['name'] = "John";
第2页
echo $_SESSION['name'];
<强>输出强>
John
确保将session_start()
放在需要使用会话的每个页面的顶部。
答案 4 :(得分:0)
基本上,当您在第一页中提交数据时,将它们保存在会话中,然后重定向到第二页。
在第二页中加载它们。
第1页:
<?php session_start();
$_SESSION["var_name"] = $some_value;
?>
第2页:
<?php session_start();
$my_var = $isset($_SESSION["var_name"])?$_SESSION["var_name"]:null;
?>
你测试my_var的值,如果它是空的,那么重定向到第一页或显示错误信息。
会话教程 http://www.w3schools.com/php/php_sessions.asp
Mysql插入教程 http://www.tizag.com/mysqlTutorial/mysqlinsert.php
POST / GET教程 http://www.tizag.com/phpT/postget.php