如何将PHP$\u会话值传递到新页面
我正在试图弄清楚如何使用php如何将PHP$\u会话值传递到新页面,php,html,Php,Html,我正在试图弄清楚如何使用php$\u会话值。情况是: 主HTML站点有一个加载产品的。php 在products.php中,表单提交并保存以下两个值: $_SESSION[“小计”]=$_POST['SUBT'] $_SESSION[“tax”]=$_POST[“tax”] 这些工作很好,我可以回应他们没有问题(在该页面内) 此页面将products.php替换为confirmation.php 一旦进入confirmation.php,我就无法获取会话值。我尝试了以下方法: <?ph
$\u会话
值。情况是:
- 主HTML站点有一个加载产品的
。php - 在products.php中,表单提交并保存以下两个值: $_SESSION[“小计”]=$_POST['SUBT'] $_SESSION[“tax”]=$_POST[“tax”]
- 这些工作很好,我可以回应他们没有问题(在该页面内)
- 此页面将products.php替换为confirmation.php
<?php
session_start();
$_SESSION["subtotal"] = $_POST['SUBT'];
$_SESSION["tax"] = $_POST['TAX'];
echo $_SESSION["subtotal"];
echo $_SESSION["tax"];
echo $subtotal;
echo $tax;
?>
及
所有人都未能看到$\u会话
-值是否随着
更改而丢失
我在products.php页面上使用了以下代码来确认会话已成功创建-它们是:
echo $_SESSION["subtotal"]." stored in session <br />";
echo $_SESSION["tax"]." stored in session <br />";
echo$\u会话[“小计”]。“存储在会话中
”;
echo$_会话[“tax”]”存储在会话
中;
注意事项:
- confirmation和products.php都在同一台服务器上
- 打印(美元会话);返回空白数组李>
- 会话_start()位于两页的最上方
if(!empty($_SESSION['myValue'])
{
echo $_SESSION['myValue'];
}
else
{
echo "Session not set yet.";
}
products.php
<?php
session_start();
$_SESSION['myValue']=$_GET['YourFormElement'];
//or
$_SESSION['myValue']=3; // You can set the value however you like.
?>
如果要在出现潜在错误之前检查变量是否已设置,请使用以下方法:
if(!empty($_SESSION['myValue'])
{
echo $_SESSION['myValue'];
}
else
{
echo "Session not set yet.";
}
我曾经这样做过,在iframe内部的url中添加了$\u会话,在iframe中使用的文件中,我使用了$\u GET的$\u会话 我不能100%确定,但它应该工作如下:
$session = $_SESSION['session'];
<iframe src="somePage.php?s=<?php echo $session; ?>"></iframe>
两个页面都在同一台服务器上吗?这里有点怪。主html站点位于我们的服务器上。第一个表单页面通过我们的服务器向PayPal发送令牌请求。他们将请求发回。现在,当用户输入CC信息时,此页面(products.php)将直接向PayPal发送令牌。不知道这是否重要。但是confirmation.php和products.php存在于同一服务器上的同一文件夹中。-希望helpson
confirmation.php
也这样做:-您是否也开始了product.php
上的会话?好的,我得到了一个空数组()感谢您的回答,尽管这几乎是我正在做的。我把我的一些代码和你的代码混在一起了。No results什么意思是No results当我执行简单的打印($\u会话)时,会一直得到一个空白数组();是,在新页面中,您分配了$_SESSION=$subtotal,而$subtotal在新页面上没有值,这是一个新变量,对于初始化一次的会话,它没有初始化,因此您可以在任何页面上获得值。您必须知道会话是一个关联数组,它存储在您自己的浏览器中。
$_SESSION['myValue']=1;
$_SESSION['myValue']=$var;
$_SESSION['myValue']=$_GET['YourFormElement'];
if(!empty($_SESSION['myValue'])
{
echo $_SESSION['myValue'];
}
else
{
echo "Session not set yet.";
}
$session = $_SESSION['session'];
<iframe src="somePage.php?s=<?php echo $session; ?>"></iframe>
if(isset($_GET['s'])){
$session = $_GET['s'];
}