面临问题在我的数据库中插入会话 ID

Posted

技术标签:

【中文标题】面临问题在我的数据库中插入会话 ID【英文标题】:Facing Problem Insert Session id In my Database 【发布时间】:2020-11-06 12:32:51 【问题描述】:

我在我的控制器中随机创建会话 ID,但我无法将我的会话 ID 存储在我的数据库中。我收到一个错误,像这样 尝试访问类型为 null 的值的数组偏移量。谢谢

public  function  addtocart(Request $request)
        $cart=New Cart();
        $session_id = Session::get('session_id');
        if (!isset($session_id)) 
            $session_id = str_random(40);
            Session::put('session_id', $session_id);
        
        $cart->product_id=$request['product_id'];
        $cart->product_name=$request['product_name'];
        $cart->product_code=$request['product_code'];
        $cart->product_color=$request['product_color'];
        $cart->price=$request['price'];
        $cart->size=$request['size'];
        $cart->quantity=$request['quantity'];
        $cart-> $request['session_id'];
        $cart->save();
        return $cart;

    

【问题讨论】:

Laravel 不处理你的会话 ID 吗?您可以使用 Session::getId() 获取会话 ID。 不应该是$cart->session_id = $request['session_id'];吗? 【参考方案1】:

在第 3 行,您将会话 ID 存储在 $session_id 变量中。

然后您调用$cart-> $request['session_id'] 尝试访问$request['session_id'] 属性。我不确定这是否是有效的 php,但我确信该属性不存在。

我假设你想要做的是:

$cart->session_id = $session_id

【讨论】:

以上是关于面临问题在我的数据库中插入会话 ID的主要内容,如果未能解决你的问题,请参考以下文章

ejb 是不是提交连接?

在php中提交表单后会话丢失其数据或值

Oracle 自动生成的主键,在我的实体中是 @Id

将会话插入 Mysql [关闭]

如何在我的内容观察器中获取插入行的 URI?

PHP 会话变量没有传递到我的登录页面,但会话 ID 是