将参数从一个php传递到多个php
.我有三个php页面: page1.php page2.php page3.php 在page1.php中,我有以下代码:将参数从一个php传递到多个php,php,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 /&g
<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上启动会话:
session_start();
$_SESSION['batch'] = $_POST['batch'];
$_SESSION['dept'] = $_POST['dept'];
然后使用
session_start();
$batch = $_SESSION['batch'];
要在page3.php上使用它,请使用会话变量 使用会话变量 您可以将$\u POST值保存到$\u会话变量:
$_SESSION['POST'] = $_POST;
您可以将$\u POST值保存到$\u会话变量:
$_SESSION['POST'] = $_POST;
将值从一个脚本移动到另一个脚本的一种方法是使用
脚本启动时,打开会话。这使您可以访问$\u会话超全局,如$\u POST。您可以在一个脚本中写入$\u会话数组,然后在另一个脚本中读取它。这些都是在服务器上处理的,因此您可以将任何需要的数据存储到会话中,而不必担心用户看到这些数据。它非常有用,通常用于多部分表单、具有登录名的站点,并在用户访问的任意多个页面上跟踪用户选择。将值从一个脚本移动到另一个脚本的一种方法是使用
脚本启动时,打开会话。这使您可以访问$\u会话超全局,如$\u POST。您可以在一个脚本中写入$\u会话数组,然后在另一个脚本中读取它。这些都是在服务器上处理的,因此您可以将任何需要的数据存储到会话中,而不必担心用户看到这些数据。它非常有用,通常用于多部分表单、具有登录名的站点,并在用户访问的任意页面上跟踪用户选择。Per@Crayon:to使用基于cookie的会话,在将任何内容输出到浏览器之前必须调用session_start() 您将需要使用您可以获得/设置如下:
// 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
Per@Crayon暴力:要使用基于cookie的会话,必须在将任何内容输出到浏览器之前调用会话_start() 您将需要使用您可以获得/设置如下:
// 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
只是在评论中回答问题 输出前必须调用session_start()是什么意思 浏览器有什么问题吗
这意味着最好的做法是将session_start()直接放在
后面,只是在注释中回答问题
输出前必须调用session_start()是什么意思
浏览器有什么问题吗
意思是最好的做法是将session_start()直接放在之后,需要注意的一点是session_start()必须放在任何输出之前,即使是您想使用它的所有页面上的空格(除非您想使用输出缓冲,而您不应该这样做),请再次检查我的问题,我有一个问题。tnx!需要注意的一点是,session_start()必须在任何输出之前出现,即使是您想要使用它的所有页面上的空白(除非您想使用输出缓冲,您无论如何都不应该这样做),请您再次检查我的问题,我有一个以下问题。tnx!如果您在会话中设置它,它应该可以工作。只要您确保session\u start()
。好的,还有一个问题,您所说的session\u start()在输出到浏览器之前必须被调用是什么意思?如果我的目的是在SQL查询中使用batch和dept,这也可以吗?我不熟悉在SQL查询中使用带有batch和dept的会话(你说的dept是什么意思?)。至于会话\u start,要使用基于cookie的会话,必须在向浏览器输出任何内容之前调用会话\u start()。
基本上确保在使用会话之前调用它,并确保它位于页面顶部。如果在会话中设置它,它应该可以工作。只要您确保session\u start()
。好的,还有一个问题,您所说的session\u start()在输出到浏览器之前必须被调用是什么意思?如果我的目的是在SQL查询中使用batch和dept,这也可以吗?我不熟悉在SQL查询中使用带有batch和dept的会话(你说的dept是什么意思?)。至于会话启动,要使用基于cookie的会话,在将任何内容输出到浏览器之前必须调用会话启动()。
基本上确保在使用会话之前调用它,并确保它位于页面顶部。这是否意味着我可以使用类似会话启动()的功能$_会话['batch']=$_POST['batch']$_会话['dept']=$_POST['dept'];。这是否意味着我可以使用session_start()之类的工具$_会话['batch']=$_POST['batch']$_会话['dept']=$_POST['dept'];