ajaxからPHPに投稿された配列内のオブジェクトにPHPでアクセスするにはどうすればよいですか?

user5451365

AJAXを使用してJavaScriptから配列を投稿しています

$.ajax({
        url: "test.php",
        type: "POST",
        data: {arr:fullData},

        success: function (data) {
            console.log(data);
            document.getElementById("status").innerHTML = data;

        },

        error: function (XMLHttpRequest, textStatus, errorThrown) {
            alert("Status: " + textStatus);
            alert("Error: " + errorThrown);
        }

これは配列です:

0: "event=200 Yard Free Style&swimmername=joe fish&lane=1&time=00:00:00&place=0&scoreA=0&scoreB=0&place2=0&time2=00:00:00&lane2=2&swimmername2=joe fish"
1: "event=200 Yard Free Style&swimmername=steve jobs&lane=3&time=00:00:00&place=0&scoreA=0&scoreB=0&place2=0&time2=00:00:00&lane2=4&swimmername2=steve jobs"
2: "event=200 Yard Free Style&swimmername=steve jobs&lane=5&time=00:00:00&place=0&scoreA=0&scoreB=0&place2=0&time2=00:00:00&lane2=6&swimmername2=steve jobs"
length: 3

PHPでは、配列は次のようになります。

array (size=1)
  'arr' => 
    array (size=3)
      0 => string 'event=200 Yard Free Style&swimmername=joe fish&lane=1&time=00:00:00&place=0&scoreA=0&scoreB=0&place2=0&time2=00:00:00&lane2=2&swimmername2=joe fish' (length=147)
      1 => string 'event=200 Yard Free Style&swimmername=steve jobs&lane=3&time=00:00:00&place=0&scoreA=0&scoreB=0&place2=0&time2=00:00:00&lane2=4&swimmername2=steve jobs' (length=151)
      2 => string 'event=200 Yard Free Style&swimmername=steve jobs&lane=5&time=00:00:00&place=0&scoreA=0&scoreB=0&place2=0&time2=00:00:00&lane2=6&swimmername2=steve jobs' (length=151)

「explode()」を使用してみましたが、「配列」を分解できないと表示され続けます

私は次のことをしようとしています:

 $array = $_POST;
 var_dump ($array[0]['event'] );

さまざまな値を設定して、次のようなSQLクエリを作成します(ループ内)。

 foreach($_POST as $data)
{
    $sql_query = '(';

if(isset($array['event'])){$sql_query .= $array['event'] . ',';}
if(isset($array['event'])){$sql_query .= $array['swimmername'] . ',';}

私はPHPに不慣れで、それを理解するのに苦労しています。どんな助けでもありがたいです。

PHPコード:

<?php

$array = $_POST;

$array1 = $_REQUEST['arr'];
var_dump($array['arr']);

$returnedInfo = explode('&',$array[1]);
// Empty string when using an empty array:
echo ($returnedInfo);
$sql_query = 'INSERT INTO tbl_name
    (event,swimmername, lane, place, time, score,  )
    VALUES ';
$i = 0;
$arrayLength = count($_POST);
var_dump ($arrayLength);

foreach($_POST as $data)
{


    $sql_query = '(';
    if(isset($data['event'])){$sql_query .= $data['event'] . ',';}
    if(isset($data['swimmername'])){$sql_query .=  ','. $data['swimmername'] . ',';}
    if(isset($data['lane'])){$sql_query .=  ','.  $data['lane'] . ',';}
    if(isset($data['place'])){$sql_query .=  ','. $data['place'] . ',';}
    if(isset($data['time'])){$sql_query .=  ','. $data['time'] . ',';}
    if(isset($data['scoreA'])){$sql_query .=  ','.  $data['scoreA'] . ',';}
    if(isset($data['scoreB'])){$sql_query .=  ','. $data['scoreB'] . ',';}
    if(isset($data['time2'])){$sql_query .=  ','. $data['time2'] . ',';}
    if(isset($data['lane2'])){$sql_query .=  ','.  $data['lane2'] . ',';}
    if(isset($data['place2'])){$sql_query .=  ','. $data['place2'] . ',';}
    if(isset($data['swimmername2'])){$name2[] = $data['swimmername2'] . ',';}
    $i++;
    if($i < $arrayLength) {
        $sql_query .=  '),';
    } else {
        $sql_query .=  ');';
    }


}
// Then use $sql_query for the INSERT step.
?>
デイブ

配列が次のようになっていると仮定します。

array (
  'arr' => 
  array (
    0 => 'event=200 Yard Free Style&swimmername=joe fish&lane=1&time=00:00:00&place=0&scoreA=0&scoreB=0&place2=0&time2=00:00:00&lane2=2&swimmername2=joe fish',
    1 => 'event=200 Yard Free Style&swimmername=steve jobs&lane=3&time=00:00:00&place=0&scoreA=0&scoreB=0&place2=0&time2=00:00:00&lane2=4&swimmername2=steve jobs',
    2 => 'event=200 Yard Free Style&swimmername=steve jobs&lane=5&time=00:00:00&place=0&scoreA=0&scoreB=0&place2=0&time2=00:00:00&lane2=6&swimmername2=steve jobs',
  ),
)

...単にループして、parse_str(簡単)やexplode(少し手間がかかる)などを使用して、各文字列を配列に変換する必要があります。例えば:

# Grab the 'arr' array
$realArray = isset($array['arr']) ? $array['arr'] : array();
foreach ( $realArray as $k => $v ) {
    # Quick and painless way to convert to array
    parse_str($v, $value);
    $realArray[$k] = $value;
}
# Put this into a function called 'debug' to make life easier
echo '<pre>';
var_export($realArray);
echo '</pre>';

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

forループでphpの配列内のオブジェクトにアクセスするにはどうすればよいですか?

分類Dev

このPHP変数にアクセスするにはどうすればよいですか(オブジェクト->配列->オブジェクト)?

分類Dev

Vue.jsの配列に配置されたオブジェクトの配列にアクセスするにはどうすればよいですか?

分類Dev

PHPを使用してstdClassオブジェクト(json出力)から配列にアクセスするにはどうすればよいですか?

分類Dev

配列内のオブジェクトからプロパティにアクセスするにはどうすればよいですか?

分類Dev

配列オブジェクトのようなPHPのJSON要素にアクセスするにはどうすればよいですか?

分類Dev

配列/オブジェクトにアクセスするにはどうすればよいですか?

分類Dev

Postman / form-dataのネストされたオブジェクトに配列を投稿するにはどうすればよいですか?

分類Dev

オブジェクト配列内のネストされた配列から特定の値にアクセスするにはどうすればよいですか?

分類Dev

Ansibleの配列内のオブジェクト内のキー/ペア値にアクセスするにはどうすればよいですか?

分類Dev

ネストされたJSONオブジェクト内の値にすばやくアクセスするにはどうすればよいですか?

分類Dev

ネストされたJSONオブジェクト内の値にすばやくアクセスするにはどうすればよいですか?

分類Dev

ネストされたオブジェクト、配列、JSONにアクセスして処理するにはどうすればよいですか?

分類Dev

PHPですべてのオブジェクトをループせずに、オブジェクトの配列内のプロパティにアクセスするにはどうすればよいですか?

分類Dev

クライアント側から送信されたオブジェクトの配列内のデータにアクセスするにはどうすればよいですか?

分類Dev

Javaでオブジェクト配列内のデータにアクセスするにはどうすればよいですか?

分類Dev

オブジェクトのネストされた配列を抽出してコア配列に配置するにはどうすればよいですか?

分類Dev

オブジェクト配列内のネストされたオブジェクトのJSONプロパティにアクセスするにはどうすればよいですか

分類Dev

JSPの<script>内のユーザー定義オブジェクトの配列にアクセスするにはどうすればよいですか?

分類Dev

配列内のプロパティでネストされたオブジェクトをクエリするにはどうすればよいですか?

分類Dev

PHPで配列オブジェクトの値を取得するにはどうすればよいですか?

分類Dev

配列内のオブジェクト、どうすればそれらにアクセスできますか?

分類Dev

オブジェクト内の特定の配列[プロパティ]にアクセスするにはどうすればよいですか?

分類Dev

複数配列のJSONオブジェクト内の値にアクセスするにはどうすればよいですか?

分類Dev

配列内のオブジェクトのプロパティにアクセスするにはどうすればよいですか?

分類Dev

オブジェクトの配列をネストされたオブジェクトに変換するにはどうすればよいですか?

分類Dev

オブジェクトの配列からデータにアクセスするにはどうすればよいですか?

分類Dev

コンストラクター内で作成されたオブジェクトにアクセスするにはどうすればよいですか?

分類Dev

渡されたオブジェクト内のデータにアクセスするにはどうすればよいですか?

Related 関連記事

  1. 1

    forループでphpの配列内のオブジェクトにアクセスするにはどうすればよいですか?

  2. 2

    このPHP変数にアクセスするにはどうすればよいですか(オブジェクト->配列->オブジェクト)?

  3. 3

    Vue.jsの配列に配置されたオブジェクトの配列にアクセスするにはどうすればよいですか?

  4. 4

    PHPを使用してstdClassオブジェクト(json出力)から配列にアクセスするにはどうすればよいですか?

  5. 5

    配列内のオブジェクトからプロパティにアクセスするにはどうすればよいですか?

  6. 6

    配列オブジェクトのようなPHPのJSON要素にアクセスするにはどうすればよいですか?

  7. 7

    配列/オブジェクトにアクセスするにはどうすればよいですか?

  8. 8

    Postman / form-dataのネストされたオブジェクトに配列を投稿するにはどうすればよいですか?

  9. 9

    オブジェクト配列内のネストされた配列から特定の値にアクセスするにはどうすればよいですか?

  10. 10

    Ansibleの配列内のオブジェクト内のキー/ペア値にアクセスするにはどうすればよいですか?

  11. 11

    ネストされたJSONオブジェクト内の値にすばやくアクセスするにはどうすればよいですか?

  12. 12

    ネストされたJSONオブジェクト内の値にすばやくアクセスするにはどうすればよいですか?

  13. 13

    ネストされたオブジェクト、配列、JSONにアクセスして処理するにはどうすればよいですか?

  14. 14

    PHPですべてのオブジェクトをループせずに、オブジェクトの配列内のプロパティにアクセスするにはどうすればよいですか?

  15. 15

    クライアント側から送信されたオブジェクトの配列内のデータにアクセスするにはどうすればよいですか?

  16. 16

    Javaでオブジェクト配列内のデータにアクセスするにはどうすればよいですか?

  17. 17

    オブジェクトのネストされた配列を抽出してコア配列に配置するにはどうすればよいですか?

  18. 18

    オブジェクト配列内のネストされたオブジェクトのJSONプロパティにアクセスするにはどうすればよいですか

  19. 19

    JSPの<script>内のユーザー定義オブジェクトの配列にアクセスするにはどうすればよいですか?

  20. 20

    配列内のプロパティでネストされたオブジェクトをクエリするにはどうすればよいですか?

  21. 21

    PHPで配列オブジェクトの値を取得するにはどうすればよいですか?

  22. 22

    配列内のオブジェクト、どうすればそれらにアクセスできますか?

  23. 23

    オブジェクト内の特定の配列[プロパティ]にアクセスするにはどうすればよいですか?

  24. 24

    複数配列のJSONオブジェクト内の値にアクセスするにはどうすればよいですか?

  25. 25

    配列内のオブジェクトのプロパティにアクセスするにはどうすればよいですか?

  26. 26

    オブジェクトの配列をネストされたオブジェクトに変換するにはどうすればよいですか?

  27. 27

    オブジェクトの配列からデータにアクセスするにはどうすればよいですか?

  28. 28

    コンストラクター内で作成されたオブジェクトにアクセスするにはどうすればよいですか?

  29. 29

    渡されたオブジェクト内のデータにアクセスするにはどうすればよいですか?

ホットタグ

アーカイブ