繁体   English   中英

如何通过动态生成密钥在php中的会话数组中添加多个值

[英]how to add multiple values in array of session in php by dynamic generation of key

我想将多个项目的 值存储在会话数组中

这是我的ajax脚本,通过它我将slug名称发布到会话中:

 <script>
$('a.add_to_cart_button').click(function(){
    var slug = $(this).attr('id');
     $.ajax({
        type: "POST",
        url: "assets/includes/session.php",
        data:{ prod_slug: slug }, 
        success: function(data){
            alert(data);
        }
     });
});
</script>

这是我的session.php代码:

<?php
session_start();
 $slug = $_POST['prod_slug'];

 $arr = array('slug'=> $slug);
$_SESSION = array_merge($_SESSION,$arr);
print_r($_SESSION);
?>

但是,由于关联数组应该具有唯一键,因此它会覆盖值:

$ arr = array('slug'=> $ slug);

键应具有增量以存储多个值,例如:

$ arr = array(' 子弹 '=> $ slug);

$ arr = array(' slug1 '=> $ slug);

$ arr = array(' slug2 '=> $ slug);

我如何完成这项工作。

获取数组中会话中的内容,然后将其附加回会话中

<?php
session_start();
if(empty($_SESSION['slug'])){
    $_SESSION['slug'] = array();
}
array_push($_SESSION['slug'], $_POST['prod_slug']);
print_r($_SESSION);
?>

这将假定您将$ _SESSION ['slug']初始化为数组。

供社区使用:

<?php

session_start();

 $slug = $_POST['prod_slug'];
$_SESSION['slugs'][] = $slug;
$_SESSION = array_merge($_SESSION);
print_r($_SESSION);
return false;

?>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM