我使用AJAX post方法发送HTML
表单和javascript
数组。但我无法在PHP
文件中获取我的数据。
$.post("addOrder.php", {
"form": $("#placeOrderForm").serialize(),
"array": array
}, function(responce) {});
答案 0 :(得分:0)
请清楚阅读docs。
更新代码:
$.post("addOrder.php",
$("#placeOrderForm").serialize(),
function(response) {
}
);
在addOrder.php
中,使用。
echo '<pre>';print_r($_POST);echo '</pre>';
如果您使用的是firebug,您将获得已发布的变量&#39;响应选项卡中的数组。
答案 1 :(得分:0)
//您可以访问jQuery.ajax发布的值 //通过全局变量$ _POST,如下所示:
$ var = isset($ _ POST [&#39; var&#39;])? $ _POST [&#39; var&#39;]:null;
答案 2 :(得分:0)
你可以试试下面的东西:
var request = $.ajax({
url: "addOrder.php",
type: "POST",
data: {<data1> : <val1>},
dataType: "html"
});
request.done(function(msg) {
$("#log").html( msg );
});
request.fail(function(jqXHR, textStatus) {
alert( "Request failed: " + textStatus );
});
看起来你传递参数有问题。
答案 3 :(得分:0)
在addForm.php中试试这个:
var_dump($_POST)
这将使您能够检查发布的表单数据。
答案 4 :(得分:0)
在你的php文件中尝试这样的事情:
$params = array();
echo parse_str($_POST, $params);
答案 5 :(得分:0)
谢谢大家。我找到了答案。我使用“serializeArray”发送表单。
HTML
<form id="placeOrderForm">
<input name="po">
<input name="desc">
</form>
的javascript
var array = [1,2];
$.post("addOrder.php",{
"form":$("#placeOrderForm").serializeArray(),
"array":array
}, function (responce) {});
PHP
$form_input_data_1 = $_POST['form'][0]['value']; // get po's data
$form_input_data_2 = $_POST['form'][1]['value']; // get desc's data
$array_index_1_data = $_POST['array'][0]; // get 1
$array_index_2_data = $_POST['array'][1]; // get 2