Membuat Aplikasi Klinik #10 - Variasi Ajax

 Selanjutnya disini kita akan mencoba menambahkan variasi ajax yang mana disini saya akan menconothkan bagaimana sebuah detail data akan ditampilkan pada sebuah modal bootstrap


Pertama Anda perlu menambahkan fungsi berikut ke file Pasiendetail.php


 public function pasien_riwayat_modal()
    {
    	?>
    		
    		 <div class="modal fade" id="confirm-keluhan">
		        <div class="modal-dialog">
		          <div class="modal-content">
		            <div class="modal-header">
		              <h4 class="modal-title">Detail Riwayat</h4>
		              <button type="button" class="close" data-dismiss="modal" aria-label="Close">
		                <span aria-hidden="true">&times;</span>
		              </button>
		            </div>
		            <div class="modal-body" id="detail_keluhan">
		             
		            </div>
		            <div class="modal-footer justify-content-between">
		              <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
		              
		            </div>
		          </div>
		          <!-- /.modal-content -->
		        </div>
		        <!-- /.modal-dialog -->
		    </div>
		      <!-- /.modal -->

    	<?php 
    }
    public function pasien_riwayat_ajax($path)
    {
    	?>
    		<script type="text/javascript">
    			$(document).on('click','.lihat_riwayat', function()
    			{
    				var detail_keluhan = $(this).attr("riwayat_id");
    				$.ajax({

    					url:"<?=$path;?>",
    					method:"post",
    					data:{detail_keluhan:detail_keluhan},
    					success:function(data){
    						$('#detail_keluhan').html(data);
    						$('#confirm-keluhan').modal("show")
    					}

    				});
    			});
    		</script>
    	<?php
    }
    

Selanjutnya buatlah sebuah folder dengan nama ajax pada folder load, kemudian tambahkan didalamnya, atau buat file didalamnya dengan nama Detaillriwayat.php kemudian masukan script berikut


<?php
require_once('../../../app/core/Ajaxloader.php');
if(isset($_POST['detail_keluhan']))
{
	if(!$obj->getTable('pasien_riwayat','riwayat_id=:riwayat_id', $_POST['detail_keluhan'],'riwayat_id'))
	{
		die("Error : Data tidak ditemukan");
	}
	else
	{

	?>
	<div class="row">
		<table class="table table-bordered">
			<tr>
				<td>Rincian Keluhan</td>
				<td><?=htmlspecialchars_decode($obj->row['keterangan_keluhan'])?></td>
			</tr>
			<tr>
				<td>Catatan Dokter</td>
				<td><?=$obj->row['catatan_dokter']?></td>
			</tr>
			<tr>
				<td>Catatan Resep</td>
				<td><?=$obj->row['catatan_resep']?></td>
			</tr>
		</table>
	</div>
<?php 
}
}
?>

Selanjutnya tambahkan trigger pada fungsi public function pasien_riwayat_table($data) file Pasiendetail.php seperti berikut


 <a href="?page=pasien_riwayat_delete&pasien_id=<?=$row['pasien_id']?>&riwayat_id=<?=$row['riwayat_id']?>"><i class="fas fa-trash"></i></a>
                            <a href="#"  riwayat_id="<?=$row['riwayat_id']?>" class="text-white btn btn-warning btn-xs lihat_riwayat">Lihat detail</a>

Terakhir pada file Runadmin.php url pasien_riwayat modifikasi atau tambahkan modal seperti berikut


case 'pasien_riwayat':
				$this->crud->pasien_riwayat_table_index($this->app->get('pasien_id'));
				$this->crud->pasien_riwayat_modal();
				break;

Kemudian pada footer tambahkan seperti berikut


$this->crud->pasien_riwayat_ajax('app/load/ajax/Detailriwayat.php');

Sehingga keseluruhan kode Runadmin.php akan terlihat seperti berikut


<?php 
class Runadmin
{
	public function Moduleadmin($path='')
	{
		$this->app->getEmpty('page');
		$this->themes->head($path);
		$this->themes->css($path);
		$this->themes->admin_nav_header($path);
		$this->themes->admin_sidebar($path);
		
		switch ($this->app->get('page')) 
		{
			case 'home':
				$this->crud->dashboard_test();
				break;
			case 'semua_pasien':
				$this->crud->pasien_table_index();
				break;
			case 'pasien_tambah':
				$this->crud->pasien_index();
				break;
			case 'pasien_edit':
				$this->crud->pasien_edit_index($this->app->get('pasien_id'));
				break;
			case 'pasien_delete':
				$this->crud->pasien_delete($this->app->get('pasien_id'));
				break;
			case 'pasien_riwayat':
				$this->crud->pasien_riwayat_table_index($this->app->get('pasien_id'));
				$this->crud->pasien_riwayat_modal();
				break;
			case 'pasien_riwayat_tambah':
				$this->crud->pasien_riwayat_index($this->app->get('pasien_id'));
				break;
			case 'pasien_riwayat_delete':
				$this->crud->pasien_riwayat_delete($this->app->get('riwayat_id'));
				break;
			
			
			default:
				$this->crud->dashboard_test();
				break;
		}

		$this->themes->footer($path);
		$this->crud->pasien_riwayat_ajax('app/load/ajax/Detailriwayat.php');
	}
}


0 Response to "Membuat Aplikasi Klinik #10 - Variasi Ajax"

Post a Comment

Komentar yang Anda kirim akan terlebih dahulu di moderasi oleh Admin