hi, aku mau nanya bagaimana caranya mengirim variable ke php dengan ajax untuk inputtype yang berulang dan memiliki array.Contoh coding:
<?php $i = 1; ?>//$i adalah baris
<?php foreach($contents as $items): ?>
   <input type="hidden" id="idrow"name ="idrow" value="<?=$i?>">
   <input type="hidden" id="txtprodid<?=$i?>"name ="txtprodid" value="<?=$items['id']?>">
   <?php echo form_input(array('name' => 'qty[]','id' =>'qty[]', 'value' => $items['qty'], 'maxlength' => '3', 'size' => '5')); ?>	
<?php $i++; ?>
<?php endforeach; ?><input type="hidden" id="row"name ="row" value="<?=$i?>">
<input type="button" value="Checkout" id="btnConfirm" name="confirm" >
$("#btnConfirm").live('click', function() {
	var row = $("#row").val();
	var idrow = $("#idrow").val();
$.ajax({ type: "POST", url: "http://localhost/test_ajax.php", data: 'txtprodid=' + $("#txtprodid"+idrow).val() + '&qty=' + $("#qty[]").val() , success: function(msg){ alert( msg ); }});
});	
code untuk pengambilan variable di php
 $row=$_POST['row'];
for($i=1;$i<$row;$i++)
{
 $datadetail['sales_id']=$datasales['sales_id'];
//$idprod=$this->input->post('txtprodid');
//$rowprod=substr($idprod,0,-1);
echo $datadetail['product_code'] = $this->input->post('txtprodid'.$i);
echo $datadetail['qty'] = $this->input->post('qty');
}
hasil yg didapat dari codingnya yaitu muncul message undefined.
mohon bantuannya, trims
Silahkan login untuk menjawab!
-1
Loading...
Ellyx Christian · Sep 7, 2011 · 0 Suka · 1 Tidak Suka
<form name="form" method="post" action="">
<?php $i = 1; ?>//$i adalah baris
<?php foreach($contents as $items): ?>
   <input type="hidden" id="idrow<?=$i;?>" name="idrow[]" value="<?=$i?>">
   <input type="hidden" id="txtprodid<?=$i?>" name="txtprodid[<?=$i;?>]" value="<?=$items['id']?>">
   <?php echo form_input(array('name' => 'qty['.$i.']','id' =>'qty'.$i, 'value' => $items['qty'], 'maxlength' => '3', 'size' => '5')); ?>	
<?php $i++; ?>
<?php endforeach; ?>
<input type="hidden" id="row" name="row" value="<?=$i?>"><!-- sebenarnya ini tidak perlu -->
<input type="button" value="Checkout" id="btnConfirm" name="confirm" >
</form>
<script type="text/javascript">
$("#btnConfirm").live('click', function(e) {
	e.preventDefault();
	$.ajax({ 
		type: "POST", 
		url: "http://localhost/test_ajax.php", 
		data: $("form").serialize(), 
		success: function(msg){ alert( msg ); }
	});
});
</script>
kode untuk pengambilan variabel
foreach($_POST['idrow'] as $idRow){
echo 'txtprodid ke-'.$idRow.':'.$_POST['txtprodid'][$idRow].'<br/>';
echo 'qty ke-'.$idRow.':'.$_POST['qty'][$idRow].'<br/>';
}
Sangat penting untuk memperhatikan penamaan dari input field!
Ref:
http://www.myphptutorials.com/tutorials/35/php-ajax-jquery
http://ask.myphptutorials.com/questions/view/203
http://www.myphptutorials.com/tutorials/154/menyimpan-data-menampilkan-beberapa-tabel