2017-01-25 18 views
0

私はいくつかの助けが必要です。私は、幅と長さのPHPを、まっすぐ前方に複数の配列を送信しようとしています。 HTMLフィールドには保存したくないのですが、うまくいきません。私は、HTMLのテキストから幅と長さを取得していますし、番号に変換し、それをjavascriptの配列に追加します。ここでJavascriptとPHP。 Ajaxを使用してPHPに複数配列を送信し、PHP配列に変換する

これは私が、私はそれを受け取るために、このコードを使用していますPHPでPHP

$.ajax({ 
     type: "POST", 
     url: "./Summary.php", 
     data: {"widths": widthL, "lengths" : lengthL}, 
     cache: false, 
     success: function (response) { 
      console.log("This is the width", widthL, " This is the length", lengthL); 
     } 

    }); 

にそれを送信するために使用していますAjaxコードであること

var widthL = []; 
var lengthL = []; 

var widths = document.wall.width.value; 
var lengths = document.wall.length.value; 

var wNumber = Number(widths); 
var lNumber = Number(lengths); 

widthL.push(JSON.stringify(wNumber)); 
lengthL.push(JSON.stringify(lNumber)); 

ためのコードです。しかし、私は物事を取り戻すつもりはありません。

<?php 

$lengths = json_decode($_POST['lengths']); 
$widths = json_decode($_POST['widths']); 

echo 'This is the width: '.$widtsL; 
echo 'This is the length: '.$lengths; 
?> 

私は誰かが私をここで助けてくれることを願っていました。 PHPで、その後

$.ajax({ 
    type: "POST", 
    url: "./Summary.php", 
    contentType: "application/json; charset=UTF-8", // Add content type 
    data: {"widths": widthL, "lengths" : lengthL}, 
    cache: false, 
    success: function (response) { 
     console.log("This is the width", widthL, " This is the length", lengthL); 
    } 

}); 

+0

あなたが 'var_d ump($ _ POST []); '? –

+0

AJAX呼び出しを行う前に 'JSON.stringify()'を実行しないでください。それは、あなたが 'dataType:" json "をajax呼び出しに追加すると、あなたのためにすべてのことを考えます。 – RiggsFolly

+1

' $ .ajax() '呼び出しに' dataType: "json" 'を追加します。 – mrun

答えて

0

まず、あなたは、Ajax POSTのコンテンツタイプを指定する必要があり

$request_body = file_get_contents('php://input'); //This reads the raw POST data 
$json = json_decode($request_body); // Then parse it to JSON 
$lengths = $json->lengths; 
$widths = $json->widths; 
+0

私はあなたがコード化してそれをエコーし​​てみましたが、まだ何も戻っていません – user5517779

0

、データ型としてPOSTパラメータ名を追加し、それはJSONに価値を入力し、 ください。 Ajaxデータのパラメータ値を使用するキー=値&キー=値の形式 PHPファイルでデバッグコードを入力

関連する問題