私は自分自身の最初のWebアプリケーションをプログラミングしようとしています。サーバーとクライアント間のデータトラヒックは、AJAXを使用して確立する必要があります。まず、私はこれでクライアント側からサーバ側にユーザ入力(HTML形式)を転送しようとしたJS-スニペット:PHP配列をJavascriptでAJAXを使用して
$("#submit").on("click", function(e) {
e.preventDefault();
$.ajax({
url : "ajax.php",
type : "POST",
data : $("#nodes").serialize(),
dataType: "text",
cache : false,
success: function(data) {
console.log(data);
$("#ajaxrequest").html(data);
},
error: function(xhr, desc, err) {
console.log(xhr);
console.log("Details: " + desc + "\nERROR: "+ err);
}
});
});
それは働いていた...しかし、今、私は(PHP-三つの異なるデータをオーバーハンドたいです私のサーバーからクライアント側への)アレイ:私はdata: $("#nodes").serialize(),
がすべて転送さのデータが含まれていregonizedまで
<?php
echo json_encode($currentdata);
echo json_encode($maxmindata);
echo json_encode($chartdata);
私は、配列はにconsole.logに示されていることを不思議に思いました。確かに私はJSファイル内の異なる変数で3つの配列をすべて抽出する必要があります。
私は、これは、コンソールの出力である...それは仕事をdidntの
を当然の
success: function(data) {
console.log(data);
current = data.currentdata;
}
のようなものを試してみました:
> {"max":{"temperature":"21.14","humidity":"39.96","pressure":"1022.2"},"min":{"temperature":"21.08","humidity":"38.72","pressure":"1022.0"}}{"current":{"ID":"755","temperature":"21.43","humidity":"40.09","pressure":"1022.8","voltage":"3.337","datetime":"2017-04-18
> 20:46:31"}}[{"ID":"570","nodeId":"Node1","humidity":"38.83","temperature":"21.08","pressure":"1022.2","voltage":"3.323","datetime":"2017-04-18
> 20:00:02"},{"ID":"571","nodeId":"Node1","humidity":"38.72","temperature":"21.08","pressure":"1022.1","voltage":"3.321","datetime":"2017-04-18
> 20:00:17"},{"ID":"572","nodeId":"Node1","humidity":"38.84","temperature":"21.1","pressure":"1022.1","voltage":"3.321","datetime":"2017-04-18
> 20:00:32"},
あなたは私が欲しいものを得るいけない場合様々なPHP配列を異なるJS変数に割り当てるにはどうすればよいですか?別の$ .ajaxをプログラムする必要がありますか?
は、配列の配列を作成します。 –
まあ、このコメントは役に立たなかった。 –
3つの配列オブジェクトを1つずつ送信しています。例:あなたのコンソールには '..}} [{..'。あなたの3つの配列を含む新しい配列を作成し、これを返します。 – Arthur