2013-05-29 40 views
1

我的第一个问题是,我希望index.php通过表单询问用户问题,并在新闻提交时更新jcart.php上的会话变量。当我稍后调用会话变量时,现在使用当前代码,因此现在我发现我刚才的代码无法正常工作。表单输入到会话变量

第二个问题是当我按提交它需要我到jcart.php有没有办法避免这种情况或让它回去。

在我的index.php我有一个表格:

<form action="jcart/jcart.php" method="post"> 
<input type="text" name="example" id="example" /> 
<input type="submit" name="submit" value="Submit" /> 
</form> 

而且在Jcart.php:

$_SESSION['example'] = $_POST['example']; 

然后在页面上我打电话它cocktails.php

<?php 
include_once('jcart/jcart.php'); 
session_start(); 
?> 

<input type="hidden" name="my-item-id" value="<?php echo $_SESSION['example'];?>" /> 

感谢您的帮助。

+1

在session_start();应该在jcart.php中调用,然后只能分配会话值 – Nisam

+0

你在调用'session_start'吗?你有错误吗? –

+0

嗨,大家好,感谢评论这段代码实际上是一个名为Jcart的脚本的一部分,似乎不再支持它,所以转向Stackoverflow。我假设会议开始工作,因为购物车作为一个整体运作。 我可以通过硬编码在jcart.php中存储一个会话变量,它可以工作,我似乎只是动态添加它。 关于呼叫会话开始第一行: //如果您的页面调用session_start()请确保首先包含jcart.php – craigie2204

回答

2

没有必要“更新jcart.php上的会话变量”。一旦将数据存储到全局$ _SESSION数组中,它应该可用于所有php文件,至少在您销毁会话之前。

话虽这么说,如果jcart/jcart.php需要有一个$_SESSION['example']变量,你必须肯定的是,该会话包括文件之前开始,例如:

<?php 
    session_start() 
    include_once('jcart/jcart.php'); 
?> 

为其他问题,您可以将表单内的操作更改为您喜欢的任何内容,或者在接收该值后发出header('Location: /');重定向到其他页面。

+0

嗨,感谢第一部分仍然不工作,但现在重定向。 :) – craigie2204

0
在jcart

/jcart.php

session_start(); 

应该在一开始被称为

1

请试试这个

*jcart.php* 

session_start(); 
$_SESSION['example'] = $_POST['example']; 

*then cocktails.php* 

include_once('jcart/jcart.php'); 

echo $_SESSION['example']; 
+0

嘿给了这个尝试,似乎并没有工作。只是试图回声

但没有任何显示 – craigie2204

+0

对不起,只是抬起头看着print_r,超越了我。我习惯于黑客入侵。我将不得不重新考虑这一点。 – craigie2204