Я новичок в этом форуме, и мне трудно обновлять выбранное значение из флажка, исходя из значения текстового поля.
Сценарий:
Я хочу обновить выбранные элементы. Например, я хочу обновить Элемент-2, и текстовое поле из полученного элемента будет включено, я введу число для примера 1 итекстовое поле из общего числа получателей будет автоматически суммироваться с использованием ajax.
Проблема заключается в том, что после отправки значения из общего числа получаемые записи не обновляются, но когда я пытаюсь проверить и распечатать_r, значение есть.
И еще одна вещь, если отмечены все флажки и введен номер для каждого полученного элемента, значение, которое он только получит, является последним значением и будет обновлено, будут все выбранные флажки.
Примечание.флажок - это массив. Текстовое поле из общего числа - это массив.
Ребята, пожалуйста, помогите мне?
Вот мой пользовательский интерфейс:
Контроллер:
public function recitem_insert(){
$this->load->model('dbquery');
$check = $this->input->post('check');
$total_rec = $_POST['total_rec'];
if(isset($check)){ //Check if check is checked
for($i=0;$i<sizeof($check);$i++){
for($j=0;$j<sizeof($total_rec);$j++){
$updateData = array('rec_qty' => $total_rec[$j] );
$this->dbquery->modUpdatedynamicval('tblstock', 'id', $updateData, $check[$i]);
}
}//end for loop
echo "<script type='text/javascript'>
alert('Successfully Added!');
window.close();
</script>";
}else{ //End If
echo 'Please select a checkbox';
}
}
Вид:
<form method="post" action="<?php echo base_url() ?>user/recitem_insert">
<div class="box">
<div class="box-header">
<h3 class="box-title">System ID: <b><?php echo $process_id; ?></b></h3>
</div>
<!-- /.box-header -->
<div class="box-body">
<table id="example1" class="table table-bordered table-striped">
<thead>
<tr>
<th>Action</th>
<th>Item Code</th>
<th>Item Description</th>
<th>Required QTY Order</th>
<th>Last QTY Recieve</th>
<th>Item Recieve</th>
<th>Total Recieve</th>
</tr>
</thead>
<tbody>
<?php
$query = $this->db->query("SELECT * FROM tblstock where process_id = '$process_id'");
foreach ($query->result() as $row){
?>
<tr>
<td><input type="checkbox" name="check[]" id="opt" value="<?php echo $row->id; ?>" onclick="valueChanged()"> </td>
<td><?php echo $row->item_code; ?></td>
<td><?php echo $row->description; ?></td>
<td><?php echo $row->qty_order; ?></td>
<td><?php echo $row->rec_qty; ?></td>
<input type="hidden" name="last_item_rec[]" value="<?php echo $row->rec_qty; ?>">
<td><input type="text" name="item_rec[]" id="txt" disabled=""></td>
<td><input type="text" name="total_rec[]"></td>
</tr>
<?php
}
?>
</tbody>
<tfoot>
</tfoot>
</table>
</div>
<!-- /.box-body -->
</div>
<div class="box-footer">
<button type="submit" class="btn bg-olive btn-flat margin">Submit</button>
</div>
</form>
Модель:
public function modUpdatedynamicval($table, $column, $data, $equal_to){
$this->db->where($column, $equal_to);
$this->db->update($table, $data);
}
Любая помощь будет с благодарностью.
Спасибо ...
РЕДАКТИРОВАТЬ:
Предположим, я ввел 1 в один текстовое поле item_receive, и общий объем будет 10, 2 в текстовом поле item_receiveдва, и общее количество будет равно 11, 3 в текстовом поле item_receive три, а общее количество будет равно 12,
CODE:
$check = $this->input->post('check');
$total_rec = $_POST['total_rec'];
echo 'Check Value';
print_r($check);
echo '<br><br>';
echo 'Total Recieve';
print_r($total_rec);
ВЫХОД:
Check ValueArray ( [0] => 1 [1] => 2 [2] => 3 )
Total RecieveArray ( [0] => 10 [1] => 11 [2] => 12 )
Но если я только во втором текстовом поле вот вывод:
Check ValueArray ( [0] => 2 )
Total RecieveArray ( [0] => [1] => 11 [2] => )