[英]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.