簡體   English   中英

無法在PHP中接收AJAX POST數據

[英]Could not receive AJAX POST data in PHP

我正在嘗試將變量作為對象發布到我的PHP文件中,但是它不接收任何數據。 我試過window.alert(u.un)來測試是否通過AJAX調用傳遞了數據,並且它工作正常,並且控制台中沒有錯誤。 但是仍然我沒有在PHP文件中獲取數據,也沒有錯誤。

這是我的AJAX功能

function getfulldetails(n)
{ 
var u={un:n};  window.alert(u.un);
var locationto= "getfull.php";
$.ajax({
   type: "POST",
   url: locationto,
   data: u,
   processData: false,
   contentType: false,
   success: function(response)
      {
        window.alert(response);
      }
   });
   return false;
}

這是我的PHP文件

<?php
session_start();
if($_SERVER['REQUEST_METHOD']==='POST')
{
    if(isset($_REQUEST["un"]))
     {
        function validate_data($data)
        {
             require 'connectcred.php';
             $data = trim($data);
             $data = stripslashes($data);
             $data = strip_tags($data);
             $data = htmlspecialchars($data);
             $data = mysqli_real_escape_string($conn,$data);
             return $data;    
        }
        $u=validate_data($_REQUEST["un"]);
        echo $u;
     }
     else
     {
         echo "something's wrong";
     }
}
?>

我只從else部分得到結果。

我已經多次使用AJAX使用下面的代碼從Form中獲取數據,並且它像一種魅力一樣工作,但是當我自己分配一個對象時,它無法工作。

不要將Content-Type / contentTypefalse 您還需要發送實際的查詢字符串。

現在,這應該解決它:

$.post(locationto, u, (response) => {
    window.alert(response);     
});

或者,使用data: "un=" + n

另外,在您的PHP中,僅使用$_POST

暫無
暫無

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

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