簡體   English   中英

將 JavaScript 變量存儲在 php 變量中,無需頁面刷新

[英]Store JavaScript variable in a php variable without page refresh

我在這里閱讀了大量文章並嘗試了數十種變體,包括 ajax。我想要做的是單擊一個按鈕並將該按鈕的 ID 存儲在 php 變量中,而無需刷新頁面。

我試過使用 isset 和 POST,我得到了一些未定義鍵數組的變體。

建議使用 Ajax,但當我使用 ajax 時,我可以獲取存儲的變量,但無法將其放入 php 變量中。

當前設置...

我有一個 HTML 按鈕,我需要從中將 id 存儲在 php 變量中,以便我可以在另一個 SQL 語句中使用它。 此按鈕是從數據庫返回的 MySQL 條記錄的 HTML 表的一部分。

<input type='button' value='Edit' name='editbtn' onclick='edit(this.id)' id =  '" . $row['id'] . "'/> 

JavaScript...

function edit(clicked_id){
        var selid = clicked_id;
        var seleid = selid.toString();
        $.ajax({
            type: 'post',
            data: {name: seleid},
            datatype: 'text',
            success: function(data){
                console.log(name);
                alert("Success, data is: " + data);  // This correctly returns the id of the button clicked
            },
     });
} 

頁面頂部的PHP是...

if(isset($_POST['name']) && !empty($_POST['name'])){
    ob_clean();
    $varid = $_POST['name'];
    echo $varid;
    exit; 
}

PHP 沒有收到任何東西。 有沒有辦法做到這一點? 我想這是后端/前端問題?

注意:我已經能夠將 JavaScript 變量存儲在 HTML 標簽中,但我無法將其用作 SQL 語句的一部分,即使在刪除標簽后也是如此。

請幫忙,謝謝!

在您的 php 代碼中嘗試這樣的事情:

$data = json_decode(file_get_contents('php://input'), true);
if(isset($data['name']) && !empty($data['name'])){
    ob_clean();
    $varid = $_POST['name'];
    echo $varid;
    exit; 
}

暫無
暫無

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

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