簡體   English   中英

如何通過Javascript將數據作為數組發布到PHP?

[英]How to post data as an array by Javascript to PHP?

JS代碼:

$('#addResults').submit(function(e) {
        var user1       = $("#user1").val();
            user2       = $("#user2").val();

        e.preventDefault();
         $.ajax({
             type: "POST",
             async: false,
             url: url,
             data: "form=addResults&user1=" + user1 + "&user2=" + user2
           }).success(function( msg ) {
                  $('.success').css("display", "");
                  $(".success").fadeIn(1000, "linear");
                  $('.success_text').fadeIn("slow");
                  $('.success_text').html(msg);
                  setTimeout(function(){location.reload()},1200);
          });

    });

Submit.php

         case 'addResults':
            $positions         = $_POST['positions'];
             $ez->addResults($positions);
         break;

function.php

        function addResults($positions) {

         $this->link->query("INSERT INTO `" . $this->prefix . "result` SET race_id = '$league', event = '$event', involved_id = '$involved',

                    evidence_link = '$evidence', description = '$description', reporter_id = '$name', status = '0'");
         echo 'Results saved';
         return;
    }

我的問題:我想將所有用戶數據存儲到一個數組中,並將其推送到PHP函數,以便可以將其插入數據庫中。

就像是:

var positions= $("#user1").val(), $("#user2").val();

我不確定如何格式化數據行。

data: "form=addResults&user1=" + user1 + "&user2=" + user2

在PHP中:

$string = "business_type,cafe|business_type_plural,cafes|sample_tag,couch|business_name,couch cafe";

$finalArray = array();

$asArr = explode( '|', $string );

foreach( $asArr as $val ){
  $tmp = explode( '=', $val );
  $finalArray[ $tmp[0] ] = $tmp[1];
}

print_r( $finalArray );

因此您的JS輸出可能只是一個字符串:

data: "form=addResults&user1=" + user1 + "|user2=" + user2

您通過ajax傳遞的數據似乎是您要發送數據的URL。 如果要通過url傳遞數據,則應使用GET方法而不是POST。

另外,不要在函數中使用傳遞給addResults $position參數,這很奇怪。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM