Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/258.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 整个站点的Opencart 3会话数据_Php_Session Variables_Opencart 3 - Fatal编程技术网

Php 整个站点的Opencart 3会话数据

Php 整个站点的Opencart 3会话数据,php,session-variables,opencart-3,Php,Session Variables,Opencart 3,我只是想知道,是否有可能在整个Opencart网站上设置会话 我的意思是,我已经在我的Opencart网站上创建了一个子目录相册。我想要实现的是在产品页面上,当用户单击相册图标时,它将被带到相册子目录。在相册子目录中,将有一个表单,用户必须填写该表单。在用户在提交时从相册目录中填写表单后,用户应重定向到该产品页面,并在相册目录中填写表单的数据。此外,产品页面应该选择了他/她在单击相册之前选择的相同选项 我试着在我的相册页面上使用以下代码设置会话数据 sessionStorage.setItem(

我只是想知道,是否有可能在整个Opencart网站上设置会话

我的意思是,我已经在我的Opencart网站上创建了一个子目录相册。我想要实现的是在产品页面上,当用户单击相册图标时,它将被带到相册子目录。在相册子目录中,将有一个表单,用户必须填写该表单。在用户在提交时从相册目录中填写表单后,用户应重定向到该产品页面,并在相册目录中填写表单的数据。此外,产品页面应该选择了他/她在单击相册之前选择的相同选项

我试着在我的相册页面上使用以下代码设置会话数据

sessionStorage.setItem(“相册”,JSON.stringify(tdata))

然后使用
window.history.go(-1)返回产品页面

但是,我仍然无法在我的产品页面上获取专辑会话数据。我尝试了
$\u SESSION
以及
$this->SESSION->data

有人知道如何做到这一点吗


感谢您在OC会话中保存数据:

$this->session->data['your_data'] = $some_data;
编辑:

要在同一域中的非OC站点中保存和检索数据,请使用: 在获取数据之前,应先运行此文件。这意味着数据必须保存到会话中。 在要从中获取数据的文件中:

session_start();
$_SESSION['my_data'] = $some_data;
若要稍后从会话中检索数据,请使用以下代码:

session_start();
if (isset($_SESSION['my_data']))
    $sessionData = $_SESSION['my_data'];
else 
    $sessionData= '';
要清除数据,请使用unset()PHP函数,如下所示:

unset($_SESSION['my_data']);

在OC会话中保存数据:

$this->session->data['your_data'] = $some_data;
编辑:

要在同一域中的非OC站点中保存和检索数据,请使用: 在获取数据之前,应先运行此文件。这意味着数据必须保存到会话中。 在要从中获取数据的文件中:

session_start();
$_SESSION['my_data'] = $some_data;
若要稍后从会话中检索数据,请使用以下代码:

session_start();
if (isset($_SESSION['my_data']))
    $sessionData = $_SESSION['my_data'];
else 
    $sessionData= '';
要清除数据,请使用unset()PHP函数,如下所示:

unset($_SESSION['my_data']);

我创建了自定义jquery文件,并在
$data['heading\u title']=$product\u info['name']之前将其插入我的产品页面

$this->document->addScript('catalog/view/javascript/jquery/album.js');
在我的album.js中

$(document).ready(function(e) {
      if (sessionStorage.getItem("album_data") != null) {
        var data = sessionStorage.getItem("album_data");
        console.log(data);
      }
}
在mysite/album中放置的my custom album.php中/

<script>
    sessionStorage.setItem("album_data", JSON.stringify(tdata));
    window.history.go(-1);
</script>

setItem(“相册_数据”,JSON.stringify(tdata));
window.history.go(-1);

不需要创建会话或任何东西。创建新会话在controller/product.php中不起作用,因为OC有自己处理会话数据的方法。因此,我们将无法访问其中的任何$u会话数据。OC只理解
$this session->data

我创建了自定义jquery文件,并在
$data['heading\u title']=$product\u info['name'之前将其插入我的产品页面

$this->document->addScript('catalog/view/javascript/jquery/album.js');
在我的album.js中

$(document).ready(function(e) {
      if (sessionStorage.getItem("album_data") != null) {
        var data = sessionStorage.getItem("album_data");
        console.log(data);
      }
}
在mysite/album中放置的my custom album.php中/

<script>
    sessionStorage.setItem("album_data", JSON.stringify(tdata));
    window.history.go(-1);
</script>

setItem(“相册_数据”,JSON.stringify(tdata));
window.history.go(-1);

不需要创建会话或任何东西。创建新会话在controller/product.php中不起作用,因为OC有自己处理会话数据的方法。因此,我们将无法访问其中的任何$u会话数据。OC只了解我如何访问相册页面中的
$this session->data

如何访问
$this->session->data
。这是一个非opencart页面?@PanktiShah,仅通过您自己的自定义AJAX处理程序。在数据更改时提交AJAX请求并将其存储在服务器的会话中。@PanktiShah在发布answeer之前,我已使用OC对其进行了测试,并在同一服务器中从OC外部获取会话数据。它正在工作。在您尝试检索会话数据之前,您应该运行一个文件,该文件将把这些数据保存到会话中。@K.B.这里我试图从外部OC到OC获取会话数据。@PanktiShah使用相同的方法,反之亦然。不要忘了首先使用JS或jquery在您想要保存会话数据的地方运行您的文件。然后在OC中检索它并为整个OC保存
$this->session->data['my_data']=$\u session['my_data']如何访问相册页面中的
$this->session->data
。这是一个非opencart页面?@PanktiShah,仅通过您自己的自定义AJAX处理程序。在数据更改时提交AJAX请求并将其存储在服务器的会话中。@PanktiShah在发布answeer之前,我已使用OC对其进行了测试,并在同一服务器中从OC外部获取会话数据。它正在工作。在您尝试检索会话数据之前,您应该运行一个文件,该文件将把这些数据保存到会话中。@K.B.这里我试图从外部OC到OC获取会话数据。@PanktiShah使用相同的方法,反之亦然。不要忘了首先使用JS或jquery在您想要保存会话数据的地方运行您的文件。然后在OC中检索它并为整个OC保存
$this->session->data['my_data']=$\u session['my_data']