1

我正在尝试通过 PHP 将一个大型数组从 Javascript 发送到 mySQL。我正在尝试使用 POST,但以下方法不起作用。http.onreadystatechange 中的“警报”弹出并似乎只包含下面的代码。代码看起来很简单。任何帮助表示赞赏。

<?php 

if (isset($_POST['params'])) {
echo 'YES isset';
$phpobj = ($_POST['params']);
echo $phpobj;

}else{
echo 'No isset';
}

?>


<!DOCTYPE html>
<html>
<head>
<script type="text/javascript">

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

var url = "PostArray.php";
var params = "lorem=ipsum&name=binny";
http.open("POST", url, true);

//Send the proper header information along with the request
http.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
http.setRequestHeader("Content-length", params.length);
http.setRequestHeader("Connection", "close");

http.onreadystatechange = function() {//Call a function when the state changes.
if(http.readyState == 4 && http.status == 200) {
    alert(http.responseText);
}
}
http.send(params);

</script>

4

1 回答 1

-1
  1. 您要传递的数据中没有名为 params 的变量,只有 lorem 和 name
  2. 你甚至没有发布,因为你还没有将变量 params(在 javascript 中)传递给 http 对象
于 2012-06-17T20:21:28.350 回答