簡體   English   中英

無法使用jquery和php設置會話ajax

[英]Cannot set session ajax using jquery and php

我想在單擊表單上的按鈕時向會話數組添加值。 我嘗試使用jquery onclick,ajax和jquery來實現這一點。 但它似乎沒有設置變量或返回任何東西。

在我的main.php中我有

<form id="sessy">
    <input type="text" name="name" id="name">
    <button id="submit" name="submit" class="btn btn-success">Submit</button>
</form>

<script>
    $("#sessy").submit(function(){
        $.ajax({
            type: "POST",
            url: "session.php",
            data: $(this).serialize(),
            success: function(){
                // Do what you want to do when the session has been updated
            }
        });

        return false;
    });
</script>

<?php 
session_start();
echo $_SESSION['name'];

?>

在我的session.php中

<?php
session_start();

$_SESSION['name'][] = $_POST['name'];
?>

我在頁面底部調用jQuery.js。

它給了我下面,第23行是我試圖回應會話變量的部分。

Notice: Undefined index: name in ....main.php on line 23

我嘗試print_r($ _ SESSION); 而不是回聲我只得到“數組()”

你真的需要一個form ,你用ajax提交。
submit是一個保留的關鍵字,您不應將其用作idclassname
它有bug的傾向......

試試這個你的main.php:

<?php
session_start();
?>
<html>
<head>
<!-- jQuery -->
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.1.0/jquery.min.js"></script>
</head>
<body>
<div id="sessy">
    <input type="text" name="name" id="name">
    <button class="btn btn-success">Submit</button>
</div>
<br>
<div id="result"></div>
<script>
    $("#sessy .btn").click(function(){
        $.ajax({
            type: "POST",
            url: "session.php",
            data: $("#sessy #name"),
            success: function(data){
                // Do what you want to do when the session has been updated
                $("#result").html("<h2>Name «"+data+"» is in session.</h2>");
            }
        });
    });
</script>
</body>
</html>

和你的session.php:

<?php
session_start();

$_SESSION['name'] = $_POST['name'];
echo $_SESSION['name'];
?>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM