2017-09-06 8 views
-1

私は4つのjs配列をAJAXを使ってPHPページに送りたいと思っています。そこにPHPスクリプトで使用する4つのPHP配列が必要です。JQueryが複数の配列をPHPに渡します

$.type(var)を使用しています。js配列が実際に配列であることを確認しました。

 $.ajax({ 
      type: "POST", 
      cache: false, 
      url: "test.php",  
      data : arrayA: arrayA, 
      success: function(res) { 
       console.log (res) 
      } 
     }); 

をしかし、次は失敗します:

var data = { arrayA: arrayA, arrayB: arrayB, arrayC: arrayC, arrayD: arrayD } 

      $.ajax({ 
       type: "POST", 
       cache: false, 
       url: "test.php",  
       data : data, 
       success: function(res) { 
        console.log (res) 
       } 
      }); 

私のPHPのページは次のとおりです。

$arrayA = $_REQUEST['arrayA']; 
$arrayB = $_REQUEST['arrayB']; 
$arrayC = $_REQUEST['arrayC']; 
$arrayD = $_REQUEST['arrayD']; 

私は「確信して1列の作品送信するには、以下を使用し

明白な行方不明、いくつかの人に助言してください。

おかげ

+0

エラーは何ですか? – clearshot66

+1

すべての配列をJSの1つの配列に入れて、その配列を渡すことができます。PHPでは '$ _POST ['array'];'を使用します。この場合 – clearshot66

+0

返事をありがとう。エラーは表示されず、何も起こりそうにない。どのように私はそれを1つの配列に結合し、PHPでそれを分割するのですか? – Tom

答えて

0

はちょうどこのを試して、この方法は動作するはずです:

// Create the arrays you want 
var arrayA = ["cat","dog"]; 
var arrayB = ["lamp","rock"]; 

// Combine the arrays into one 
var array = [arrayA, arrayB]; 


// Send them via ajax 
$.ajax({ 
      type: "POST", 
      cache: false, 
      url: "test.php",  
      data : array: array, 
      success: function(res) { 
       console.log (res) 
      } 
     }); 

PHP側:

<?php 
// (use print_r($_POST) to see what comes through and how it is setup in the POST array, that way you can get the keys and names and build it out how you wish 
    foreach($_POST['array'] as $array){ 
     // This will give each array, you could also get the array keys and use those as names if you wish 
    } 

?> 
+0

ありがとう私はそれを行ってあげるよ。 PHPに入ったら、どのように個々の配列に戻すのですか? – Tom

+1

これは配列の配列として渡され、foreach($ _ POSTを$ arrayとして使用)し、動的に名前を付けた配列を作成します。 – clearshot66

+0

おかげですぐに試してみてください – Tom

関連する問題