将参数从一个php传递到多个php

时间:2011-03-08 20:02:13

标签: php

。我有三个php页面:

page1.php中 使page2.php page3.php

在page1.php上的

我有这段代码:

<form id="try" method="post" action="page2.php">
Batch: <input id="batch" name="batch" type="text"/><br />
Dept: <input id="dept" name="dept" type="text"><br />
<input type="submit" />
</form>
在page2.php上的

我只需使用$_POST['batch']; and $_POST['dept'];

调用它们就可以使用在page1.php上插入的值

但我接下来要做的是将batch和dept的值从page2.php传递给page3.php。或者从page1.php到page2.php,因为我认为它是一样的。

。帮助吧!谢谢你

@ kjy112 - 我很困惑,因为我正在使用

<form method="post"> 

我应该使用以下内容在page2.php上开始我的会话:

session_start();
$_SESSION['batch'] = $_POST['batch'];
$_SESSION['dept'] = $_POST['dept'];

然后使用

session_start();
$batch = $_SESSION['batch'];

在page3.php上使用它?

5 个答案:

答案 0 :(得分:3)

Per @Crayon Violent:要使用基于cookie的会话,必须在向浏览器输出任何内容之前调用session_start()。

您需要使用PHP SESSION,您可以这样设置/设置:

// page1.php

session_start();
$_SESSION['myvar'] = 'test';

//page2.php

session_start();
$myvar = $_SESSION['myvar'];
echo $myvar; //should be test;

//page3.php
session_start();
echo $_SESSION['myvar']; //should give u test still

答案 1 :(得分:1)

使用会话变量。

答案 2 :(得分:0)

您可以将$ _POST值保存到$ _SESSION变量:

$_SESSION['POST'] = $_POST;

答案 3 :(得分:0)

将值从一个脚本移动到另一个脚本的一种方法是使用session,而不用担心按什么顺序访问哪个脚本。

当您的脚本启动时,您打开会话。这可以让你访问$ _SESSION超全局,比如$ _POST。您可以在一个脚本中写入$ _SESSION数组,然后在另一个脚本中读取它。这些都在服务器上处理,因此您可以将所需的任何数据存储到会话中,而无需担心用户看到此数据。它非常有用,通常用于多部分表单,具有登录功能的站点,以及在用户访问的页面上跟踪用户选择。

答案 4 :(得分:0)

回答评论中的问题

  

在输出之前必须调用session_start()是什么意思   什么东西到浏览器?

表示最好将session_start()直接放在<?php之后 与<?php session_start();类似,并确保php起始标记不在<html>标记之后。

  

如果我的目的是在SQL上使用批处理和部门,这也会起作用   疑问?

是的,当然,只需在$_SESSION['']变量中设置所有参数(sql,dept)。