Enviar array para o php com ajax
Tenho os seguintes campos:
<input name="discriminacao[]" type="text" class="input_discriminacao" />
<input name="valor[]" type="text" class="input_valor" />
<input name="discriminacao[]" type="text" class="input_discriminacao" />
<input name="valor[]" type="text" class="input_valor" />
<input name="discriminacao[]" type="text" class="input_discriminacao" />
<input name="valor[]" type="text" class="input_valor" />
Fiz o javascript assim:
// Pega os valores dos campos Discriminação e Valor
var discriminacao = $('.input_discriminacao');
var valor = $('.input_valor');
var array_discriminacao = new Array();
for(i=0; i<=2; i++)
{
array_discriminacao[i] = discriminacao[i].value + "|#|" + valor[i].value + "|FIM|";
}
$.ajax(
{
type: "POST",
url: "ajax.php",
data: "discriminacao[]=" + array_discriminacao,
//enquanto a função esta sendo processada
beforeSend: function() { },
success: function(txt) { alert(txt) },
error: function(txt) { alert("erro1: "+txt.responseText); }
}
);
Eu fiz um var_dump em $_POST['discriminacao'], e ele ficou um array de apenas uma posição com todos os valores do array_discriminacao separado por vírgula...
No ajax.php eu usaria o EXPLODE para separar os dados e salvar no banco, mas esse código está muito feio, to achando muita gambiarra demais. Alguém tem uma solução interessante?
Discussão (2)
Carregando comentários...