Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/276.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 跨域购物篮_Php_Laravel - Fatal编程技术网

Php 跨域购物篮

Php 跨域购物篮,php,laravel,Php,Laravel,我们想要实现一个功能,用户可以进入一个域a,把东西放在他们的篮子里。当他们进入域名B(也归我们所有)时,他在A中制作的篮子的内容也显示在这里 如何在php中实现这一点?站点b如何知道其在站点a上会话的标识符 我们查看了coolblue.be和gsmstore.be以寻求灵感,但都不清楚:D 您需要创建执行以下操作的系统: 1.当用户登录a页时,您需要为其设置会话id,并使用此会话id将其重定向到B 1.1.会话数据需要存储在数据库中(会话可以存储在cookie或数据库中,您需要在数据库中设置保

我们想要实现一个功能,用户可以进入一个域a,把东西放在他们的篮子里。当他们进入域名B(也归我们所有)时,他在A中制作的篮子的内容也显示在这里

如何在php中实现这一点?站点b如何知道其在站点a上会话的标识符

我们查看了coolblue.be和gsmstore.be以寻求灵感,但都不清楚:D

  • 您需要创建执行以下操作的系统:

    • 1.当用户登录a页时,您需要为其设置会话id,并使用此会话id将其重定向到B
    • 1.1.会话数据需要存储在数据库中(会话可以存储在cookie或数据库中,您需要在数据库中设置保存)
    • 2.当用户被重定向到B时,此页面会给他另一个会话id
    • 2.1.您需要在数据库中为页面B创建一个表,其中包含来自页面a和B的会话id
    • 2.2.然后将用户重定向到页面A
    • 3.用户点击页面A,将产品添加到篮子中
    • 4.过了一段时间,用户来到B页
    • 4.1.首次访问时,应用程序检查用户是否已检查其是否具有数据库表中a页的会话id,以及a页和B页的会话id
    • 4.2.如果用户没有访问页面A,则什么都没有发生,但如果用户有来自页面A的会话,则应用程序会从页面A数据库获取会话的基本数据,并保存到页面B中的用户会话。在页面B上。在这两种情况下,会话中都设置了用户已选中的状态,因为我们不希望在任何页面视图上进行检查
    • 完成
  • 增加

    • 1.可以删除数据库表中早于几个小时的A和B页会话_id的记录
    • 2.对于A页,同样的事情需要以同样的方式对B页进行

  • 不同的域或不同的子域?您可以使用数据库驱动程序并在数据库中存储会话。请参见两个域是否位于同一服务器中?如果是这样,您可以通过db甚至文件“共享”会话。子域不是一个选项,它们是完全限定的域。快速浏览coolblue上的源代码。可能看起来它们正在生成单独的会话,每个商店一个(基于
    PHPSESSID
    cookies)-然后看起来它们与该会话的唯一全局id绑定(保存在
    Coolblue会话
    cookie中…可能)。。。这可能是使用数据库存储来保存与主会话相关的数据。然后每个站点访问相同的数据库。不过,这只是基于前端可见内容的猜测。