Я создаю HTML-форму, которая позволит пользователю указать количество полей переменной длины для отправки (поля, добавленные / удаленные на стороне клиента через javascript).
Я хочу иметь возможность иметь делос этими представлениями на стороне сервера двумерного массива, что-то вроде:
array(
array(
'venue_name' = 'venue 1',
'venue_description' => 'nighlife',
'venue_street_address' => '111 fake street'
....
),
array(
'venue_name' ...
)
);
Это форма HTML, с которой я работаю:
<form>
<div style="border:1px solid white;">
<label>Venue Name:</label><br><input name="venue_name[]" type="text" /><br>
<label>Description:</label><br><input name="venue_desc[]" type="text" /><br>
<label>Street Address:</label><br><input name="venue_street_address[]" type="text" /><br>
<label>City:</label><br><input name="venue_city[]" type="text" /><br>
<label>State:</label><br><input name="venue_state[]" type="text" /><br>
<label>Zip:</label><br><input name="venue_zip[]" type="text" /><br>
</div>
<div style="border:1px solid white;">
<label>Venue Name:</label><br><input name="venue_name[]" type="text" /><br>
<label>Description:</label><br><input name="venue_desc[]" type="text" /><br>
<label>Street Address:</label><br><input name="venue_street_address[]" type="text" /><br>
<label>City:</label><br><input name="venue_city[]" type="text" /><br>
<label>State:</label><br><input name="venue_state[]" type="text" /><br>
<label>Zip:</label><br><input name="venue_zip[]" type="text" /><br>
</div>
</form>
Я использую функцию .serialize () jQuery для отправки формы на мой сервер через ajax, и вот как она поступает:
team_name=team+wild&venue;_name[]=venue+1&venue;_desc[]=nighlife&venue;_street_address[]=111+Fake+Street&venue;_city[]=Boston&venue;_state[]=MA&venue;_zip[]=02115&venue;_name[]=venue+2&venue;_desc[]=desc&venue;_street_address[]=115+rake+street&venue;_city[]=Boston&venue;_state[]=MA&venue;_zip[]=03030
Как можно преобразовать эту строку представления в массив вформат, который я ищу, и это лучший способ справиться с такой ситуацией?(наборы переменной длины для полей формы)
РЕДАКТИРОВАТЬ 1
jQuery.ajax({
url: window.location,
type: 'post',
data: {
'vc_method': 'step_submit',
'fan_page_id': jQuery('#fan_page_id').html(),
'submit_data': jQuery(main_holder_body).find('form#setup_form').serialize()
},
cache: false,
dataType: 'json',
success: function(data, textStatus, jqXHR){
console.log(data);
}
});