簡體   English   中英

使用JQuery發送到php的JSON數據不起作用

[英]JSON data sent using JQuery to php not working

我有這段代碼,可以使用JQuery將JSON數據發送到php文件,但無法正常工作。 它在控制台中顯示無錯誤,但不輸出。 如果使用var_dump,它將在php文件中輸出數組(0){}。 這是JQuery代碼:

 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
 "http://www.w3.org/TR/html4/strict.dtd">

<html>
<?php
   function searchResults($q) {
    $host = "http://search.twitter.com/search.atom?q=" . urlencode( $q ) . "&rpp=100";
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $host);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);

    //Raw xml
     $result = curl_exec($ch);
     curl_close($ch);
     $xml = simplexml_load_string($result);
     return json_encode($xml);
     } 
   ?>
   <head>
    <script type="text/javascript" src="http://code.jquery.com/jquery-latest.min.js">
    </script>
    </head>
    <body>
    <script type="text/javascript"> var msg_top = <?php echo   
    searchResults('windows');?>;
    </script>
    <script type="text/javascript">
    $(document).ready(function() 
    {
     $.ajax({
     url: "script.php",
     type: "POST",
     dataType: "json",
     data: msg_top,
     success: function(){
     alert("success");
     }
    });
   alert("failure");
   });
  </script>
 </body>
</html>

這是我的PHP代碼:

    <?php
     var_dump($_POST);
    ?>
data: "msg_top",

應該沒有引號:

data:msg_top,

在這行上:

var msg_top = <?php echo searchResults('windows');?>;

將字符串設為json:

var msg_top = JSON.parse("<?php echo searchResults('windows');?>");

還有 data: msg_top

你有沒有嘗試過

$msg = json_decode(stripslashes ($_POST['msg_top']), true);

暫無
暫無

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

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