Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/292.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/webpack/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用AJAX向PHP发送数据_Javascript_Php_Jquery_Html_Ajax - Fatal编程技术网

Javascript 使用AJAX向PHP发送数据

Javascript 使用AJAX向PHP发送数据,javascript,php,jquery,html,ajax,Javascript,Php,Jquery,Html,Ajax,在发布此问题之前,我已搜索了我的问题,但未能找到解决方案。 我需要发送一个json字符串到php文件,但无法这样做,请有人帮我解决以下问题:我是php和jquery新手,正在努力,需要您的合作 我有一个函数可以捕获文本文件上的数据: function updateVal() { var node_list = document.getElementsByTagName('input'); var c = 0; var fieldName = []; var fieldText = [] var

在发布此问题之前,我已搜索了我的问题,但未能找到解决方案。 我需要发送一个json字符串到php文件,但无法这样做,请有人帮我解决以下问题:我是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);
}
函数updateVal(){
var node_list=document.getElementsByTagName('input');
var c=0;
var fieldName=[];
var fieldText=[]
var ID=[];
对于(变量i=0;i
My update.php如下所示:

<?php
$json = $_POST['json'];
$result = json_decode($json);

echo $result;
echo $_POST['myData']);?>
500(内部服务器错误)表示服务器端出现了问题。因此,请查看apache错误日志以了解更多详细信息


您可以在这里找到apache日志
/var/log/apache2/

u用return语句注释了函数的右括号。 更改此项:

//return JSON.stringify(postData);}
致:

此外:

data: JSON.stringify(postData),
在update.php中

$json = $_POST['myData'];
$result = json_decode($myData);

var_dump($result);
在客户端(javascript代码):

在服务器端(PHP代码):


@Tushar的评论帮助我解决了这个问题

contentType: 'application/x-www-form-urlencoded; charset=UTF-8', data: {json: JSON.stringify(postData)

向php页面发送Ajax请求以获取数据

$.ajax({ method: "POST", // it may be Get url: "some.php", //page where you sent request data: { name: "John", location: "Boston" } //attibutes you want to take on that page }) .done(function( msg ) { // sucessfull reponse alert( "Data Saved: " + msg ); });

尝试
data:JSON.stringify(postData),
@Tushar不工作。仅内部服务器错误,表示无法解码valueTry
contentType:'application/x-www-form-urlencoded;charset=UTF-8',data:{json:json.stringify(postData),
我认为这是可行的,但我如何查看字符串是否被传输到php。我尝试了执行echo,但没有显示任何内容。为什么不干脆
var\u dump($\u请求)
看看你得到了什么?还可以试试@Tushar告诉你的内容。这是一个打字错误,更新了我的问题以反映变化。我不知道这与内部服务器错误ini集(“显示错误”,“1”);错误报告(E_ALL)有什么关系;您可以尝试放置这些以检查是否有任何错误。或者检查apache错误log@NullPoi我能够克服内部服务器错误,但是如何确保正确传递json对象?请您提供帮助
json_decode($_POST["data"])
contentType: 'application/x-www-form-urlencoded; charset=UTF-8', data: {json: JSON.stringify(postData)
$.ajax({ method: "POST", // it may be Get url: "some.php", //page where you sent request data: { name: "John", location: "Boston" } //attibutes you want to take on that page }) .done(function( msg ) { // sucessfull reponse alert( "Data Saved: " + msg ); });