私は例えばのためのフォームを持っています。
HTML
<form id="data">
<input id="hostname" type="text" name="hostname" value="" />
</form>
そして、いいえにフィールドを追加するJavaScriptがいくつかあります。私が持っている友達の。
注: 執筆時間を節約するために、いくつかの fb API スクリプトを追加することは避けます。再編集して追加してほしい場合は、コメントを追加してください。
ジャバスクリプト
<script>
//load fb api
//authenticate with permissions {scope: email,friends_birthday,users_birthday}
FB.api('/me/friends?fields=id,name,birthday',function (friendsdata) {
for (var i = 0; i < friendsdata.data.length; i++) {
$('#hostname').after('<input type="text" name="hostid[]" value="'+friendsdata.data[i].id+'" />');
}
$.ajax({
type: "GET",
url: "php/send.php",
data: $("#data").serializeArray(),
success: function(send) {
console.log(send);
}
});
})
</script>
PHP
$hostid = $_GET['hostid'];
print_r($hostid); // returns nothing if input field is generated using jquery after
上記は完全に正常に機能します。データを取得し、フィールドに挿入します。しかし、問題は、シリアライズ配列を使用してajax経由でこのデータをphpファイルに投稿しようとしているときです。
入力フィールドが動的に生成されるため、php で ids 配列を受け取ることができません。
id フィールドを手動で追加するだけで問題なく動作します。
提案や解決策はありますか?
編集
Arun から要求された Ajax 保存メソッド。
よろしく、ダルトン。