为什么 PHP 看不到来自 ajax js 的值?

当我从 JS 端得到结果时,该值变为 true。但我想将值填充到我的 PHP 文件中,所以我使用了 ajax。当我删除 PHP 中的 ifisset 函数时,出现“未定义索引”错误。


HTML 端


     <form method="post" onsubmit="return false;"  class="form-inline">

     <input type="email" name="email" id="subscriber_email" placeholder="Your E-mail" >

     <button type="submit" id="subscribe_newsletter" class="btn newsbox-btn w- 

      100"onclick="gonder()">Subscribe</button>

                            

       </form>

       <div id="subscribe_message"></div>

        <p id="succes" class="mt-30"></p>

jS侧


<script  type="text/javascript">

function gonder(){

var ad=$("input[name='email']").val();


$.ajax({

    type:"POST",

    url:"myphpfile.php",

    data:ad,   // I also tried  {'sendingData':ad} but it doesn't work.

    success:function(sonuc){

        $("#subscribe_message").html(sonuc);

        $("#succes").html(sonuc);   

        

    }

})


 }

</script>

以及 PHP 端


<?php



    if(isset($_POST["ad"])){

    $x=$_POST["ad"];

    echo $x;


     }

   else{

      echo "There is nothing coming from the script.";


      }


     ?>


胡说叔叔
浏览 61回答 1
1回答

哈士奇WWW

您正在发送一个值,但您没有发送具有该值的密钥。例如,如果值为123则您只发送123,没有其他内容。ad所以这不会找到它,因为发送的数据中没有调用密钥:$_POST["ad"]为值添加一个键:data:&nbsp;{&nbsp;ad:&nbsp;ad&nbsp;}或者甚至简单地:data:&nbsp;{&nbsp;ad&nbsp;}
打开App,查看更多内容
随时随地看视频慕课网APP