不使用php返回ajax数据


not returning ajax data with php

我试图访问通过ajax发送的数据,并返回我的echo语句,但不是我传递的内容,我做错了什么?

$.ajax({
  url: 'http://www.example.php',
  data : { 'foo' : 'bar', 'bar2' : 'foo2' },
  processData: false,
  contentType: false,
  type: 'POST',
  success: function(data){
    console.log('success data '+data);
  }
});
 $data = $_POST['foo'];
 $data2 = $_POST['bar2'];
echo('almost');
echo($data);
echo($data2);
echo('almost');

控制台读取成功数据almostalmost

您的ajax请求不正确,您告诉jQuery.ajax不要处理您的数据并按原样发送,这将不起的作用

$.ajax({
  url: 'http://www.example.php',
  data : { 'foo' : 'bar', 'bar2' : 'foo2' },
  type: 'POST',
  success: function(data){
    console.log('success data '+data);
  }
});

您的服务器端脚本需要application/x-www-form-urlencoded内容类型,这是jQuery.ajax默认情况下所做的,但如果您告诉它不要处理数据或设置内容类型,则不会。