Один пользовательский несколько адресов доставки, как сделать это по умолчанию, если нажать кнопку "Сделать как по умолчанию", этот адрес должен быть по умолчанию и оставлен по всему адресу, указанному как кнопка по умолчанию в конкретном адресном поле, за исключением поля адреса по умолчанию.
Просмотр страницы
<?php foreach ($buyer_Address as $row) { ?>
<div class="col-md-4">
<div class="panel panel-default add_min_height">
<div class="panel-heading">Default:</div>
<input type="hidden" name="de" id="de" value="<?php echo $row->b_id; ?>">
<div class="panel-body">
<address><?php echo $row->b_fullname; ?><br>
<?php echo $row->b_street_address; ?>,<?php echo $row->b_locality ?>,<br>
<?php echo $row->b_landmark; ?>,
<?php echo $row->b_city; ?>, <?php echo $row->b_state; ?>,<?php echo $row->b_pincode; ?>
India
Phone number: <?php echo $row->b_mobile_number; ?></address>
</div>
<div class="panel-footer">
<a href="<?php echo base_url(); ?>index.php/welcome/buyereditaddress?id=<?php echo $row->b_id; ?>" >Edit</a>
<i class="fa fa-ellipsis-v"></i>
<a href="<?php echo base_url(); ?>index.php/welcome/buyerdeleteaddress?id=<?php echo $row->b_id; ?> ">Delete</a>
<i class="fa fa-ellipsis-v"></i>
<?php if ($row->status == '0') { ?>
<button type="submit" style="color:#337ab7;background: none !important;border: none;" name="default" id="default">Make as deafault</button>
<?php } ?>
</div>
</div>
</div>
<?php } ?>
контроллер
public function defaultAddress() {
$id = $this->input->post('de');
$this->BuyerProfile_Model->defaultAddress($id);
redirect('welcome/buyeraddresses');
}
модель
function defaultAddress($id) {
$this->db->trans_start();
$this->db->query("UPDATE buyer_order_address SET status = '0' WHERE b_id = '$id'");
$this->db->query("UPDATE buyer_order_address SET status = '1' WHERE b_id = '$id'");
$this->db->trans_complete();
}
Заранее благодарю за любую помощь.
Измените свою кнопку следующим образом
<button type="button" class="btn btn-info mk-def" data-id="<?php echo $candidate_id; ?>" >Make as default</button>
Добавить следующий сценарий ajax
$('.mk-def').click(function () {
var btn = $(this);
var candidate_id = btn.data('id');
console.log(candidate_id);
$.ajax({
url: '<?=base_url("index.php/BuyerProfile_Controller/defaultAddress"); ?>',
type: 'POST',
data: "candidate_id="+candidate_id,
dataType: 'TEXT',
success: function (data) { console.log(data);
btn.text('FINISHED'); location.reload();
}
});
});
измените функцию контроллера следующим образом.
public function defaultAddress() {
$candidate_id = $this->input->post('candidate_id');
$this->BuyerProfile_Model->defaultAddresss($candidate_id);
}