Javascript 使用ajax.send将数据发送到php

Javascript 使用ajax.send将数据发送到php,javascript,php,ajax,Javascript,Php,Ajax,有人能帮我把这些数据发送到一个.php页面,在那里我可以在我的php页面上收到它吗 javascript: postToSql(){ var ajax; if (window.XMLHttpRequest) { // code for IE7+, Firefox, Chrome, Opera, Safari ajax=new XMLHttpRequest(); } else { // code for IE6, IE5 ajax=new ActiveXObjec

有人能帮我把这些数据发送到一个.php页面,在那里我可以在我的php页面上收到它吗

javascript:

postToSql(){
var ajax;
if (window.XMLHttpRequest)
 {
          // code for IE7+, Firefox, Chrome, Opera, Safari
 ajax=new XMLHttpRequest();
}
else
{
    // code for IE6, IE5
 ajax=new ActiveXObject("Microsoft.XMLHTTP");
 }
  ajax.onreadystatechange=function()
 {
  if (ajax.readyState==4 && ajax.status==200)
 {
   alert(ajax.responseText); //receiving response
 }
 };

 var name = $("#entry_1274804157").val();
//alert(name);
 var company= $("#entry_1828184698").val();
var phone=$("#entry_2039177352").val();
var email=$("#entry_1545475878").val();
 var comments=$("#entry_1846523632").val();
 var params = {
    "name":name,
    "company":company,
    "phone":phone,
  "email":email,
  "comments": comments
 };     
//var jsonText = JSON.stringify(params);
 ajax.open("POST", "view/templates/includes/insertgoogle.php", false);
 ajax.setRequestHeader("Content-type","application/x-www-form-urlencoded");
 ajax.send("totalJsonStr="+params);
 //alert(totalJsonStr);
 // alert(params);
 return true;
 }
</script>

如果您想使用$\u GET

删除:

ajax.open("POST", "view/templates/includes/insertgoogle.php", true);
加:

有用链接:

在哪里创建“ajax”对象

var ajax;
if (window.XMLHttpRequest)
  {// code for IE7+, Firefox, Chrome, Opera, Safari
    ajax=new XMLHttpRequest();
  }
else
  {// code for IE6, IE5
    ajax=new ActiveXObject("Microsoft.XMLHTTP");
  }  

从这里开始:

使用POST方法

完美的解决方案是,将所有值存储在一个数组中,并使用
json.stringify()

在php中,使用
json\u decode()
解码json字符串

更新

将此添加到javascript中

<script type="text/javascript">

function postToSql(){
    var ajax;
    if (window.XMLHttpRequest)
      {// code for IE7+, Firefox, Chrome, Opera, Safari
      ajax=new XMLHttpRequest();
      }
    else
      {// code for IE6, IE5
     ajax=new ActiveXObject("Microsoft.XMLHTTP");
      }
    ajax.onreadystatechange=function()
      {
      if (ajax.readyState==4 && ajax.status==200)
        {
           alert(ajax.responseText); //receiving response
        }
      }
        var name = "1234";
        var company= "1234";
        var phone="1234";
        var params = {
            "name":name,
            "company":company,
            "phone":phone,
        };      
        var jsonText = JSON.stringify(params);
        ajax.open("POST", "view/templates/includes/insertgoogle.php", true);
        ajax.setRequestHeader("Content-type","application/x-www-form-urlencoded");
        ajax.send("totalJsonStr="+jsonText);
}
</script>
<form action="https://docs.google.com/asgsasdfasg/formResponse"  method="POST" id="" target="_self" onsubmit="postToSql();return false;">

函数postToSql(){
var-ajax;
if(window.XMLHttpRequest)
{//IE7+、Firefox、Chrome、Opera、Safari的代码
ajax=新的XMLHttpRequest();
}
其他的
{//IE6、IE5的代码
ajax=新的ActiveXObject(“Microsoft.XMLHTTP”);
}
ajax.onreadystatechange=function()
{
if(ajax.readyState==4&&ajax.status==200)
{
警报(ajax.responseText);//接收响应
}
}
var name=“1234”;
var company=“1234”;
var phone=“1234”;
变量参数={
“姓名”:姓名,
“公司”:公司,
“电话”:电话,
};      
var jsonText=JSON.stringify(params);
open(“POST”,“view/templates/includes/insertgoogle.php”,true);
setRequestHeader(“内容类型”、“应用程序/x-www-form-urlencoded”);
send(“totalJsonStr=“+jsonText”);
}
将此添加到php

<?php
        if(isset($_POST["totalJsonStr"])) 
  {
        $jsonVal = json_decode($_POST["totalJsonStr"]);
        print $jsonVal->{'name'}; 
        print $jsonVal->{'company'};
        print $jsonVal->{'phone'};
  }
        else 
  { 
       die("No Data Found");
  } 
    ?>


由于没有任何东西对我有效,我最终使用了jquery ajax。我不一定要通过GET接收数据,我只想接收我的php页面上的数据…在帖子中给出的链接,你可以从那里获得完整的ajax代码。我在哪里向php发送数据?对不起,我错过了代码片段。现在检查更新的答案。我发现了问题,因为async设置为true,表单在onsubmit函数完成之前提交。现在请告诉我如何用php检索这些数据…json方式或ajax方式。ajax方式$name=$\u POST['name']不起作用。在回答中,我发现的问题是我在发布数据之前设置了请求头的脚本。现在检查更新后的答案。我的答案已经正确了。也许我应该告诉你,所有这些都发生在onsubmit函数调用上
var ajax;
if (window.XMLHttpRequest)
  {// code for IE7+, Firefox, Chrome, Opera, Safari
    ajax=new XMLHttpRequest();
  }
else
  {// code for IE6, IE5
    ajax=new ActiveXObject("Microsoft.XMLHTTP");
  }  
<script type="text/javascript">

function postToSql(){
    var ajax;
    if (window.XMLHttpRequest)
      {// code for IE7+, Firefox, Chrome, Opera, Safari
      ajax=new XMLHttpRequest();
      }
    else
      {// code for IE6, IE5
     ajax=new ActiveXObject("Microsoft.XMLHTTP");
      }
    ajax.onreadystatechange=function()
      {
      if (ajax.readyState==4 && ajax.status==200)
        {
           alert(ajax.responseText); //receiving response
        }
      }
        var name = "1234";
        var company= "1234";
        var phone="1234";
        var params = {
            "name":name,
            "company":company,
            "phone":phone,
        };      
        var jsonText = JSON.stringify(params);
        ajax.open("POST", "view/templates/includes/insertgoogle.php", true);
        ajax.setRequestHeader("Content-type","application/x-www-form-urlencoded");
        ajax.send("totalJsonStr="+jsonText);
}
</script>
<form action="https://docs.google.com/asgsasdfasg/formResponse"  method="POST" id="" target="_self" onsubmit="postToSql();return false;">
<?php
        if(isset($_POST["totalJsonStr"])) 
  {
        $jsonVal = json_decode($_POST["totalJsonStr"]);
        print $jsonVal->{'name'}; 
        print $jsonVal->{'company'};
        print $jsonVal->{'phone'};
  }
        else 
  { 
       die("No Data Found");
  } 
    ?>