【发布时间】:2015-10-21 04:52:45
【问题描述】:
在发布此问题之前,我已经搜索了我的问题,但未能找到解决方案。 我需要向 php 文件发送一个 json 字符串,但无法这样做,有人可以帮我解决以下问题:我是 php 和 jquery 的新手,正在苦苦挣扎,需要您的合作。
我有一个捕获文本文件数据的函数:
function updateVal() {
var node_list = document.getElementsByTagName('input');
var c = 0;
var fieldName = [];
var fieldText = []
var ID = [];
for (var i = 0; i < node_list.length; i++) {
var node = node_list[i];
if (node.getAttribute('type') == 'text') {
fieldName[c] = node.name;
fieldText[c] = node.value;
ID[c] = node.id;
c++;
}
}
var postData = {
fieldName: fieldName,
fieldText: fieldText,
ID: ID
};
var dataString = JSON.stringify(postData);
console.log(JSON.stringify(postData));
$.ajax({
type: "POST",
dataType: "json",
url: "update.php",
data: {myData:postData}
})
//return JSON.stringify(postData);
}
我的update.php是这样的:
<?php
$json = $_POST['json'];
$result = json_decode($json);
echo $result;
echo $_POST['myData']);?>
加载时:我收到以下错误:
加载资源失败:服务器响应状态为 500(内部服务器错误)
此外,我不确定数据是否发送到 php。 请专家验证一下。
【问题讨论】:
-
试试
data: JSON.stringify(postData), -
@Tushar 不工作。仅内部服务器错误,表示无法解码值
-
试试
contentType: 'application/x-www-form-urlencoded; charset=UTF-8', data: {json: JSON.stringify(postData), -
我认为这行得通,但是我如何查看字符串是否正在传输到 php。我尝试回显,但没有显示任何内容。
-
为什么不直接
var_dump($_REQUEST)看看你得到了什么?也试试@Tushar 告诉的内容
标签: javascript php jquery html ajax