【问题标题】:Sending values through AJAX to PHP file to store in $_SESSION variable not working通过 AJAX 将值发送到 PHP 文件以存储在 $_SESSION 变量中不起作用
【发布时间】:2017-08-31 04:04:37
【问题描述】:

所以在开始之前,我已经确定使用 session_start(); - 这似乎是 95% 遇到此问题的人的解决方案。

我正在创建一个食谱网站,当用户点击一个 li 元素时,javascript 代码获取该成分的 id 和名称,将其发送到一个 php 文件,该文件应将该值存储在 $_SESSION变量。

所有代码sn-ps都高度概括!

HTML:

<div id="ingredientContainer">
    <ul>
        <li id="ingredient-43" class="ingredient">Avocado</li>
        <li id="ingredient-90" class="ingredient">Bacon</li>
    </ul
</div>

JavaScript(第一次尝试)

$('#ingredientContainer .ingredient').click(function(){

    var ingredientName = $(this).html();
    var ingredientID = $(this).attr('id').split('-')


    $.ajax({
        url: "js/routes/session.php",
        cache: false,
        type: "POST",
        dataType:'json',
        data:{
            ingredientName: $(this).html(),
            ingredientID: ingredientID[1]
        }
    })

})

JavaScript(第二次尝试)

 $('#ingredientContainer .ingredient').click(function(){

    var ingredientName = $(this).html();
    var ingredientID = $(this).attr('id').split('-')


    $.post("js/routes/session.php", { "ingredientName": ingredientName, "ingredientID": ingredientID[1] } );

})

PHP (session.php):

<?php

    session_start();

    if($_POST['ingredientName'] && $_POST['ingredientID']) {
        $_SESSION['finalized'][$_POST['ingredientID'])] = array(
        'ingredientID' => $_POST['ingredientID']),
        'ingredientName' => $_POST['ingredientName']
        );
    }
?>

单击一些成分后,我检查了 $_SESSION 变量,但其中没有存储任何值。

有什么想法吗?

【问题讨论】:

    标签: php jquery ajax session


    【解决方案1】:

    这可能只是您对代码的缩写,但您的 PHP 代码中似乎有一个额外的结束括号:

    $_SESSION['finalized'][$_POST['ingredientID'])] = array(
    

    应该是

    $_SESSION['finalized'][$_POST['ingredientID']] = array(
    

    【讨论】:

    • 哈哈,在我审阅提交的问题时看到了。很好的发现!
    • 大功告成。 :-) 总是小事啊……只需等待 7 分钟即可接受您的正确答案。再次感谢。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-06-07
    • 2017-06-16
    • 2012-11-14
    • 2014-02-08
    • 2017-03-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多