【问题标题】:php how to add array to array unlimitphp如何将数组添加到数组无限
【发布时间】:2015-12-19 09:49:42
【问题描述】:

我有一个按钮,当用户单击add button 时,我使用JavaScriptAjax 将数据发送到php 以添加到array 以存储在session

这是我的代码JavaScript

     var xhttp = new XMLHttpRequest();
     xhttp.onreadystatechange = function() {
                if (xhttp.readyState == 4 && xhttp.status == 200) {
                }
     };
    xhttp.open("GET","/ajax_addItem.php?id="+id+"&name="+name+"&price="+price+"&task=storeSession", true);
    xhttp.send(); 

这是PHP

     $id = $_GET['id'];
     $name = $_GET['name'];
     $price = $_GET['price'];
     $_SESSION['name']= array("id"=>$id,"name"=>$name,"price"=>$price);

我的问题与PHP 相关,当我点击add button 时,我的代码是数据总是替换新闻数据。如何将所有内容添加到$_SESION['name'] 作为Array in ArrayArray list

【问题讨论】:

  • 给谁投票,我不明白,为什么我只是发布问题并投票?
  • 您需要将您的$_SESSION['name'] 数组更新为$_SESSION['name'][]。为什么需要更新是因为每当您推送最新数据时,它都会替换最后一个数据并存储最新数据。 Check This
  • $_SESSION['lastpostedstuff'] = $_POST;
  • 一切正常!谢谢

标签: javascript php arrays


【解决方案1】:

如果您希望$_SESSION['name'] 成为数组数组,请先将$_SESSION['name'] 创建为数组,然后使用括号符号[] 将新数组推入其中,即:

// Create new array if it doesn't exist
if(!isset($_SESSION['name'])) {
    $_SESSION['name'] = array();
}

// Retrieve request parameters
$id = $_GET['id'];
$name = $_GET['name'];
$price = $_GET['price'];

// Push new array
$_SESSION['name'][] = array(
    "id" => $id,
    "name" => $name,
    "price" => $price
    );

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-11-01
    • 2012-01-17
    • 1970-01-01
    • 1970-01-01
    • 2023-03-28
    • 2023-01-08
    • 2014-11-26
    • 2016-07-22
    相关资源
    最近更新 更多