ajax怎么传递值?

我想使用ajax传这个starValue给数据库进行保存,

jQuery('.stars .star').click(function(){
    var starValue = $(this).closest('.stars').find('.fullStar').length;
    console.log(starValue);

为了传递这个值

 $.ajax({ url: "trygo.php", type: "POST", data:{"myData":starValue}, 

我的trygo.php文件为

mysql_connect($dbhost, $dbuser, $dbpass); mysql_select_db($dbname) or die(mysql_error()); // 
Retrieve data from Query String $myData = $_GET['myData']

但是我得到了错误undefine,请问怎么传他

阅读 2.4k
3 个回答
jQuery(".stars .star").click(function () {
  var starValue = $(this).closest(".stars").find(".fullStar").length;
  console.log(starValue);
  $.ajax({
    type: "POST",
    url: "trygo.php",
    data: { myData: starValue },
    dataType: "json",
    success: function (response) {
      console.log("response: ", response);
    },
  });
});

1.
ajax写法没什么问题。你确定你的starValue是有值的?
2.
你的前端传的是 Post Body
PHP取的确是Query String
这里两者就没对上。


你要明白一点:
前端发post body 你需要在request body取值
前端发get query string,你需要在Query String取值

方案 1
PHP 使用 $_POST['myData'] 或者 $_REQUEST

方案 2
ajax 改成 get 方法传输

啊这,前端写的是post请求,你却用get来获取吗

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题