簡體   English   中英

如何將JS變量傳遞給PHP變量

[英]How to pass JS variable to PHP variable

這是我第一次涉足Ajax,我感到困惑。

問題: JS變量似乎沒有通過Ajax傳遞給php。

我收到此通知:

注意:未定義的索引:第31行的C:\\ xampp \\ htdocs \\ Website \\ ref_files \\ delete.php中的文本

第31行是: $name = $_POST['text'];

所以問題似乎是,據我所知,“ text ”沒有傳遞給php嗎?

JS和PHP都在WhatsNew.php中包含的delete.php中。

我得到“ Response:顯示在頁面上,並顯示一條警告“成功”。

“文本”中有一個值,我已經用alert(text)測試了它。

JavaScript + Ajax

<script>

var text = $('#title').text()

 $.ajax({
         url: "WhatsNew.php",
         type: "post",
         cache: "false",
         data: text,
         success: function(){
             alert("success");
         },
         error: function(){
             alert("failure");
         }
     });
</script>

的PHP

<?php
$name = $_POST['text'];
echo "Response: " . $name;
 ?>

如果需要更多信息,它將在此之后發布。

您需要將數據更改為:

data: {text: something},

並在js中更改變量的名稱,因為編譯器將不知道采用哪個文本,例如:

var something = $('#title').text();

如果這不起作用,請發表評論!

在其他文件上的php中嘗試此操作,並成功獲得一些響應:

<?php 
echo "hello"; 
$name = $_POST['text']; 
echo "<label id='1'>Response: " . $name . "</label>"; 
?> 

你需要改變

data: text,

data: {text:text},

您已步入正軌,只需進行一項修改:

data: {text:text},

您需要發送text作為發布數據的關鍵。

在嘗試讀取$('#title').text()之前,您需要等待文檔准備就緒。

只需將所有內容都包裝在$(function() {...})中(以及其他人指出的data:{text:text} )。

$(function() {
    var text = $('#title').text();
    $.ajax({
        url: "WhatsNew.php",
        type: "post",
        cache: "false",
        data: {text:text},
        success: function(){
            alert("success");
        },
        error: function(){
            alert("failure");
        }
     });
});

暫無
暫無

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

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