إنشاء CRUD باستخدام مفهوم OOP في PHP مع طرق عرض Bootstrap

Hai All ketemu lagi bersama saya portgastea , tutorial kali ini adalah Membuat CRUD mengunakan konsep OOP di بي أتش بي dengan tampilan التمهيد, walaupun saya baru belajar konsep OOP di بي أتش بي saya ingin SHARE, barangkali aja bermanfaat.

Sebelumnya saya ingin menjelaskan alasan mengapa kita mesti dan mulai menerapkan konsep OOP.

  1. Konsep OOP memudahkan kita untuk menganalisa program yang kita akan buat. Ini akan sangat terasa kalau kita membuat program besar dan riwet.
  2. Dengan OOP, proses reuse kode-kode yang kita buat untuk project yang hampir sama, mudah, karena kode yang kita buat rapih dan terstruktur. Sehingga untuk mengubah atau reuse kode gak pusing-pusing lagi.
  3. Konsepnya per modul. Pernah buat fungsi ato prosedur di C atau di بي أتش بي ? lalu kita tinggal panggil saja kan nama fungsinya. Kalau error pasti mudah diketahui karena terbaca dari fungsi yang kita panggil. Itulah maksudnya konsep per modul. Sehingga dengan OOP, kita dimudahkan untuk membuat dan membaca kode kita (efisiensi kode).
  4. Dengan OOP, kode-kode yang kita buat menjadi lebih rapih dan terstruktur.

 

OK langsung saja, pertama buat directory baru dengan nama crudoop atau terserah anda di htdocs lalu download التمهيد dan masukan folder assets ke directory tersebut.

Pertama membuat database baru dengan nama crud_oop setelah itu buat tabel biodata seperti dibawah ini

CREATE TABLE IF NOT EXISTS `biodata` (
`id` int(11) NOT NULL,
  `nama` varchar(200) NOT NULL,
  `tmpt_lahir` varchar(40) NOT NULL,
  `tgl_lahir` date NOT NULL,
  `alamat` text NOT NULL,
  `telpon` varchar(15) NOT NULL
) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=10 ;
 
--
-- Dumping data إلى عن على table `biodata`
--
 
INSERT INTO `biodata` (`id`, `nama`, `tmpt_lahir`, `tgl_lahir`, `alamat`, `telpon`) VALUES
(3, 'asep', 'ciamis', '1989-07-01', 'sadsadsad', '09090909'),
(6, 'sutisna tea', 'jakarta', '1998-01-01', 'andeztea', '090909090'),
(7, 'dina maulidina', 'jakarta', '1999-01-01', 'sadsadsadasdasdd', '090900909'),
(8, 'wahyu', 'jakarta', '1999-02-02', 'sadasdadadasd', '98989898'),
(9, 'iman ', 'cianjur', '1999-01-01', 'pasirhuni', '0909090909090');
 
--
-- فهارس إلى عن على طاولات ملقاة
--
 
--
-- فهارس إلى عن على table `biodata`
--
ALTER TABLE `biodata`
 ADD PRIMARY مفتاح (`id`);

 

Kedua buat file php baru dengan nama koneksi.php lalu copy an script dibawah ini

<?بي أتش بي
//membuat class databse
صف دراسي قاعدة البيانات {
    // properti
    private $dbHost = "localhost";
    private $dbUser = "root";
    private $dbPass = "12345";
    private $dbName = "crud_oop";
 
    // method koneksi MySQL
    وظيفة connectMySQL() {
        mysql_connect($this->dbHost, $this->dbUser, $this->dbPass);
        mysql_select_db($this->dbName) أو ال("Database tidak ada!");
    }
 
    // method tambah data (insert)	
    وظيفة tambahBiodata($nama,$tmpt_lahir,$tgl_lahir,$alamat,$telpon) {
 
        $query = "INSERT INTO biodata(nama,tmpt_lahir,tgl_lahir,alamat,telpon) VALUES ("$nama","$tmpt_lahir","$tgl_lahir","$alamat","$telpon")";
        $hasil = mysql_query($query);
 
        إذا ($hasil)
		  صدى صوت "<div class='alert alert-block alert-success'><قوي><أنا></أنا> DATA BERHASIL DI SIMPAN</قوي></شعبة>";
 
        آخر
         صدى صوت "<div class='alert alert-block alert-danger'><قوي><أنا></أنا> DATA GAGAL DI UPDATE</قوي></شعبة>";
		}
 
 
    // method tampil data 	
    وظيفة tampilBiodata() {
        $query = mysql_query("SELECT * FROM biodata ORDER BY id");
        في حين ($صف = mysql_fetch_array($query))
            $البيانات[] = $صف;
        إرجاع $البيانات;
    }
 
    // method hapus data
    وظيفة hapusBiodata($id_b) {
        $query = mysql_query("DELETE FROM biodata WHERE id='$id_b"");
		إذا ($query)
		    صدى صوت "<div class='alert alert-block alert-success'><قوي><أنا></أنا> Data Biodata dengan ID " . $id_b . " sudah dihapus</قوي></شعبة>";
		آخر
			 صدى صوت "<div class='alert alert-block alert-danger'><قوي><أنا></أنا>GAGAL DI HAPUS</قوي></شعبة>";
    }
 
    // method membaca data biodata
    وظيفة bacaDataBiodata($field, $id_b) {
        $query = "SELECT * FROM biodata WHERE id = '$id_b"";
        $hasil = mysql_query($query);
        $البيانات = mysql_fetch_array($hasil);
        إذا ($field == 'nama')
            إرجاع $البيانات['nama'];
		آخر إذا ($field == 'tmpt_lahir')
            إرجاع $البيانات['tmpt_lahir'];
		آخر إذا ($field == 'tgl_lahir')
            إرجاع $البيانات['tgl_lahir'];
        آخر إذا ($field == 'alamat')
            إرجاع $البيانات['alamat'];
        آخر إذا ($field == 'telpon')
            إرجاع $البيانات['telpon'];
    }
 
    // method untuk proses update data biodata
    وظيفة updateDataBiodata($id_b, $nama,$tmpt_lahir,$tgl_lahir,$alamat,$telpon) {
        $query = "UPDATE biodata SET nama='$nama",tmpt_lahir='$tmpt_lahir",tgl_lahir='$tgl_lahir", alamat ='$alamat", telpon='$telpon' WHERE id='$id_b"";
        $hasilupdate=mysql_query($query);
 
        إذا ($hasilupdate)
		    صدى صوت "<div class='alert alert-block alert-success'><قوي><أنا></أنا> DATA BERHASIL DI UPDATE</قوي></شعبة>";
        آخر
            صدى صوت "<div class='alert alert-block alert-danger'><قوي><أنا></أنا> DATA GAGAL DI UPDATE</قوي></شعبة>e";
    }
 
}
?>

Ketiga buat file index.php nya seperti gambar dibawah ini

index.php   
<!DOCTYPE html>
<html lang="en">
  <رئيس>
    <meta charset="utf-8">
    <عنوان>إنشاء CRUD باستخدام مفهوم OOP في PHP مع طرق عرض Bootstrap</عنوان>
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta name="description" content="">
    <meta name="author" content="">
 
    <!-- Le styles -->
	    <link href="assets/css/bootstrap.css" rel="stylesheet" media="screen">
        <link href="assets/css/bootstrap-responsive.min.css" rel="stylesheet" media="screen">
		 <link href="assets/css/bootstrap.min.css" rel="stylesheet" media="screen">
    <أسلوب>
      الجسم {
        padding-top: 60مقصف; /* 60بكسل لجعل الحاوية تذهب طوال الطريق إلى أسفل الشريط العلوي */
      }
    </أسلوب>
    <link href="assets/css/bootstrap-responsive.css" rel="stylesheet">
 
    <!-- HTML5 shim, for IE6-8 support of HTML5 elements -->
    <!--[if lt IE 9]>
      <script src="../assets/js/html5shiv.js"></النصي>
    <![إنهاء إذا]-->
 
    <!-- Fav and touch icons -->
    <link rel="apple-touch-icon-precomposed" sizes="144x144" href="assets/ico/apple-touch-icon-144-precomposed.png">
    <link rel="apple-touch-icon-precomposed" sizes="114x114" href="assets/ico/apple-touch-icon-114-precomposed.png">
      <link rel="apple-touch-icon-precomposed" sizes="72x72" href="assets/ico/apple-touch-icon-72-precomposed.png">
                    <link rel="apple-touch-icon-precomposed" href="assets/ico/apple-touch-icon-57-precomposed.png">
                                   <link rel="shortcut icon" href="assets/ico/favicon.png">
  </رئيس>
 
  <الجسم>
 <div class="navbar navbar-inverse navbar-fixed-top">
      <div class="navbar-inner">
        <div class="container">
          <button type="button" class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse">
            <span class="icon-bar"></امتداد>
            <span class="icon-bar"></امتداد>
            <span class="icon-bar"></امتداد>
          </زر>
          <a class="brand" href="http://andeznet.com">AndezNet</أ>
          <div class="nav-collapse collapse">
            <ul class="nav">
              <في ال><a href="#">الصفحة الرئيسية</أ></في ال>
			  <li class="active"><a href="#">Biodata</أ></في ال>
              <في ال><a href="#">تسجيل خروج</أ></في ال>
            </ال>
          </شعبة><!--/.nav-collapse -->
        </شعبة>
      </شعبة>
    </شعبة>
 
	<div class="container">
<?بي أتش بي
// memanggil file koneksi
تضمن 'koneksi.php';
 
// instance objek db
$db = جديد قاعدة البيانات();
 
// koneksi ke MySQL via method
$db->connectMySQL();
 
// proses hapus data
إذا (ايسيت($_احصل على['aksi'])) {
    إذا ($_احصل على['aksi'] == 'hapus') {
        // baca ID dari parameter ID Biodata yang akan dihapus
        $هوية شخصية = $_احصل على['id_b'];
 
        // proses hapus data biodata berdasarkan ID via method
        $db->hapusBiodata($هوية شخصية);
    } elseif ($_احصل على['aksi'] == 'tambah') {
        صدى صوت"<br>
<form method=POST action='?aksi=tambahBiodata'>
<table cellpadding='0' cellspacing='0' border='0' class='table table-striped table-bordered' >
<tr><td>اسم</td><td><input type=text name='nama'></td></tr>
<tr><td>Tempat lahir</td><td><input type=text name='tmpt_lahir'></td></tr>
<tr><td>Tanggal lahir</td><td><input type=text name='tgl_lahir' ></td></tr>
<tr><td>Alamat</td><td><textarea type=text name='alamat'></textarea></td></tr>
<tr><td>Telpon</td><td><input type=text name='telpon'></td></tr>
<tr><td></td><td><button type='submit' class='btn btn-primary'>SIMPAN</زر></td></tr>
</الطاولة>
</form>
";
    } elseif ($_احصل على['aksi'] == 'tambahBiodata') {
        $nama = $_بريد['nama'];
		$tmpt_lahir = $_بريد['tmpt_lahir'];
		$tgl_lahir = $_بريد['tgl_lahir'];
        $alamat = $_بريد['alamat'];
        $telpon = $_بريد['telpon'];
 
        $db->tambahBiodata($nama,$tmpt_lahir,$tgl_lahir, $alamat, $telpon);
    }
// proses edit data
    آخر إذا ($_احصل على['aksi'] == 'edit') {
        // baca ID Biodata yang akan di edit
        $هوية شخصية = $_احصل على['id_b'];
 
// menampilkan form edit Biodata pakai method bacaBiodata()
        ?>	
 
        <form class="form-horizontal" method="post" action="<?بي أتش بي $_SERVER['PHP_SELF'] ?>?aksi=update">
            <table cellpadding="0" cellspacing="0" border="0" class="table table-striped table-bordered" >
                <tr><td>Nama Lengkap</td><td>:</td>
                    <td><input type="text" name="nama" value="<?بي أتش بي صدى صوت $db->bacaDataBiodata('nama', $هوية شخصية); ?>"></td>
                </tr>
 
				<tr><td>Tempat lahir</td><td>:</td>
                    <td><input type="text" name="tmpt_lahir" value="<?بي أتش بي صدى صوت $db->bacaDataBiodata('tmpt_lahir', $هوية شخصية); ?>"></td>
                </tr>
 
				<tr><td>Tanggal lahir</td><td>:</td>
                    <td><input type="text" name="tgl_lahir" value="<?بي أتش بي صدى صوت $db->bacaDataBiodata('tgl_lahir', $هوية شخصية); ?>"></td>
                </tr>
 
                <tr><td>Alamat</td><td>:</td>
                    <td><textarea type="text" name="alamat" size="40"><?بي أتش بي صدى صوت $db->bacaDataBiodata('alamat', $هوية شخصية); ?></textarea></td>
                </tr>
 
                <tr><td>Telpon</td><td>:</td>
                    <td><input type="text" name="telpon" value="<?بي أتش بي صدى صوت $db->bacaDataBiodata('telpon', $هوية شخصية); ?>"></td>
                </tr>	
            </الطاولة>
            <input type="hidden" name="id" value="<?بي أتش بي صدى صوت $هوية شخصية; ?>">
            <td><button type='submit' class='btn btn-primary'>UPDATE</زر></td>
        </form>
 
        <?بي أتش بي
    } آخر إذا ($_احصل على['aksi'] == 'update') {
        // proses update data biodata
        $id_b = $_بريد['id'];
        $nama = $_بريد['nama'];
		$tmpt_lahir = $_بريد['tmpt_lahir'];
		$tgl_lahir = $_بريد['tgl_lahir'];
        $alamat = $_بريد['alamat'];
        $telpon = $_بريد['telpon'];
 
        // update data via method
        $db->updateDataBiodata($id_b,$nama,$tmpt_lahir,$tgl_lahir,$alamat,$telpon);
    }
}
 
// buat array data biodata dari method tampilBiodata()
$arraybiodata = $db->tampilBiodata();
 
صدى صوت"</الطاولة> <br> <a href='?aksi=tambah'><button type='submit' class='btn btn-primary'>TAMBAH</زر></أ>";
صدى صوت "<table cellpadding='0' cellspacing='0' border='0' class='table table-striped table-bordered' >
      <tr><th>No</th>
           <th>Nama Biodata</th>
           <th>Tempat Lahir</th>
		    <th>Tanggal lahir</th>
			 <th>Alamat</th>
           <th>Telpon</th>
           <th>Aksi</th>
       </tr>";
$أنا = 1;
foreach ($arraybiodata مثل $البيانات) {
    صدى صوت "<tr><td>" . $أنا . "</td> 
          	   <td>" . $البيانات['nama'] . "</td>
			   <td>" . $البيانات['tmpt_lahir'] . "</td>
			   <td>" . $البيانات['tgl_lahir'] . "</td>
               <td>" . $البيانات['alamat'] . "</td>
               <td>" . $البيانات['telpon'] . "</td>
               <td><a class='btn btn-info btn-sm' href='" . $_SERVER['PHP_SELF'] . "?aksi=edit&id_b=" . $البيانات['id'] . "'>Edit</أ> 
                   <a class='btn btn-danger btn-sm' href='" . $_SERVER['PHP_SELF'] . "?aksi=hapus&id_b=" . $البيانات['id'] . "'>Hapus</أ></td>
            </tr>";
    $أنا++;
}
 
صدى صوت "</الطاولة>";
?>
</شعبة>
 
	<div class="row-fluid">
			<div class="span12">
			  <div class="row-fluid">
				<div class="alert alert-info">
					<a name="contact"></أ>
				  <h2>www.andeznet.com</h2>
				  <p class="text-info">Gudang Teknologi & Informasi</p>
				  <p>&copy; <a href="http://andeznet.com">www.andeznet.com</أ>&nbsp<?بي أتش بي صدى صوت date("Y");?></p>
				</شعبة><!--/span-->
			  </شعبة><!--/row-->
			</شعبة><!--/span-->
	</شعبة><!--/row-->
 
 
    <script src="assets/js/jquery.js"></النصي>
    <script src="assets/js/bootstrap-transition.js"></النصي>
    <script src="assets/js/bootstrap-alert.js"></النصي>
    <script src="assets/js/bootstrap-modal.js"></النصي>
    <script src="assets/js/bootstrap-dropdown.js"></النصي>
    <script src="assets/js/bootstrap-scrollspy.js"></النصي>
    <script src="assets/js/bootstrap-tab.js"></النصي>
    <script src="assets/js/bootstrap-tooltip.js"></النصي>
    <script src="assets/js/bootstrap-popover.js"></النصي>
    <script src="assets/js/bootstrap-button.js"></النصي>
    <script src="assets/js/bootstrap-collapse.js"></النصي>
    <script src="assets/js/bootstrap-carousel.js"></النصي>
    <script src="assets/js/bootstrap-typeahead.js"></النصي>
 
	<script src="assets/js/bootstrap.min.js"></النصي>
 
  </الجسم>
</لغة البرمجة>

Jika sudah benar maka cek di browser anda dengan ketik http://localhost/crudoop

إنشاء CRUD باستخدام مفهوم OOP في PHP مع طرق عرض Bootstrap

إنشاء CRUD باستخدام مفهوم OOP في PHP مع طرق عرض Bootstrap

untuk download sorce code nya disini تحميل

Dari artikel diatas, bukan berarti saya mahir dalam OOP, saya juga masih dan dalam mempelajari konsep satu ini di PHP . Jadi mohon dikoreksi bila ada kata-kata / soucecode yang salah, mungkin teman-teman yang sudah pengalaman menggunakan konsep ini bisa menambahkan.

Happy Coding & برمجة

 

 

ربما يعجبك أيضا...

19 استجابات

  1. Ghijoon يقول:

    Keep Posting gan,

    ane lagi pake bootstrap dikombinasikan sama framework….
    kalau menurut ane sih CRUDI gan, bukan CRUD
    Create Read Update Delete Index

    hehehe walaupun cuman halaman Index tapi halaman Index juga memegang peranan penting

    sekarang ane lagi kepentok paging di halaman Index pakai framework + bootstrap

  2. rivaldi يقول:

    ombagaimana cara nya menambahakan view,بحث,dan pagination dari tutorial di atas ?

    tutorialnya om..

    nuhun

  3. بورتغاستيا يقول:

    Ok terima kasih, next saya tampilin link demo nya juga

  4. Luhur Budiutomo يقول:

    Ini blog bagus amat yakBookmark

  5. Ulil Albab Rabbani يقول:

    Thanks banget gan buat tugas ane nih

  6. bym يقول:

    bro..
    gw mau , pinjem isi otaknya dan sewa ilmunya..
    gw hire kemana?: harus via projects.co.id ?

  7. kuramaa يقول:

    hi admin, bisa request tutorial untuk membuat halaman paging nya ?

  8. toni يقول:

    Kalau mau tambah struktur tabel di databasenya gimana?
    mau tak kasih no.induk di bawah id. terus konfigurasi di index dan koneksi yang mana?
    ane rubah kokk error terus.

اترك رد

لن يتم نشر عنوان بريدك الإلكتروني. الحقول المطلوبة محددة *