如何在 MySQL 和 PHP 中的单个会话中添加多个值


how to add multiple values in a single session in mysql and php

我是php和mysql的新手。我想在 mysql 和 php 的单个会话中插入多个值,但没有成功。下面是我的代码

if(!isset($_SESSION['sessionname']['value1']['value2']['value3'])) {
    header("Location:index.php?page=admin");
}
$sql = "INSERT INTO table(value1, value2, value3) VALUES ('".mysqli_real_escape_string($dbconnect,$_SESSION['sessionname']['value1']['value2']['value3'])."')";
$qry = mysqli_query($dbconnect,$sql);
unset($_SESSION['sessionname']['value1']['value2']['value3']);`

您似乎正在尝试将 PHP 会话中的单个值插入到 MYSQL 表中的 3 列中。

 $_SESSION['sessionname']['value1']['value2']['value3']` is an associative array.  That statement does not reference 3 separate values, but a single nested value.  Here's a little visualization.
$_SESSION
   -> sessionname
     -> value1
        -> value2
           -> value3

但我认为你打算抓住。

 $_SESSION
   -> sessionname
      -> value, value2, value3

如果是这样,您需要做的是:

`$sql = "INSERT INTO table(value1, value2, value3) VALUES ('".mysqli_real_escape_string($dbconnect,$_SESSION['sessionname']['value1']) . "," . mysqli_real_escape_string($dbconnect,$_SESSION['sessionname']['value2']) . "," . mysqli_real_escape_string($dbconnect,$_SESSION['sessionname']['value3']) ."')";`

对于任何语法错误,我们深表歉意,因为HTML文本区域不是我首选的编辑器:)。

> $_SESSION 可以用作关联数组。您可以将数据推送到$_SESSION变量中。

请记住每次需要访问会话数据时都使用session_start函数

session_start();
$_SESSION['db_data'] = array('value1', 'value2', 'valuex');
$value1 = $_SESSION['db_data']['value1'];