.:: Jasa Membuat Aplikasi Website,Desktop,Android Order Now..!! | | Order Now..!! Jasa Membuat Project Arduino,Robotic,Print 3D ::.

Cara Membuat Koneksi Database MySQL Menggunakan MySQLi dan PHP

0 komentar
Sahabat Zona Belajar yang budiman, banyak diantara Kita menggunakan berbagai database dalam membangun sebuah aplikasi. Entah itu berbasis pemrograman desktop ataupun website. Dalam setiap pembangunan aplikasi dan database tersebut, memerlukan sebuah �jembatan� agar dapat saling terhubung. Namun �jembatan� tersebut tidak dilalui makhluk hidup melainkan sebuah �datadigital�. Data yang akan dimasukkan oleh pengguna (user) melalui media aplikasi desktop maupun website, akan dilewatkan melalui �jembatan� tersebut. Maka dari itu �jembatan� ini sering disebut dengan konektor. Nah, salah satu konektor yang digunakan untuk menghubungkan antara aplikasi berbasis web dengan database MySQL adalah MySQLi
Cara Membuat Koneksi Database MySQL Menggunakan MySQLi dan PHP
MySQL to MySQLi
MySQLi merupakan pengembangan atau versi terbaru dari MySQL. Kepanjangan dari MySQLi adalah MySQL improved (sumber: PHP Net). Dengan menggunakan MySQLi ini, Kita mendapatkan lebih banyak kelebihan, diantaranya (sumber: PHP Net MySQLi ):
  • Object-oriented interface
  • Support for Prepared Statements
  • Support for Multiple Statements
  • Support for Transactions
  • Enhanced debugging capabilities
  • Embedded server support
Nah, kemudian bagaimana contoh penggunaanya?. Mari kita pelajari bersama. Kita akan membuat koneksi dengan PHP dan database MySQL. Pertama, tentu siapkan terlebih dahulu databasenya. Langkah-langkahnya sebagai berikut:
  • Buatlah Database: db_universitas
  • CREATE DATABASE IF NOT EXISTS db_universitas;  
  • Sekarang buatlah sebuah file PHP, untuk melakukan koneksi dengan databasenya. Namun disini ada 2 cara untuk melakukan koneksinya yaitu, berbasis objek dan terstruktur. Mari kita coba:
    • Koneksi PHP dan MySQLi menggunakan gaya pemrograman berbasis Objek.
    • 1:  <?php  
      2: set_error_handler(error_reporting(0)) ; # menghilangkan status error oleh php
      3: $server = "localhost"; # alamat mysql host lokal
      4: $username = "root"; # username mysql default
      5: $password = "password"; # password mysql disesuaikan dengan server masing-masing
      6: $database = "db_universitas"; # nama dabatase yang dibuat
      7: $koneksi = new mysqli($server,$username,$password,$database);
      8: if($koneksi->connect_errno){
      9: echo "Failed to connect to MySQL: (" . $koneksi->connect_errno . ") " . $koneksi->connect_error;
      10: }else{
      11: echo "Congratulation... Connection Success";
      12: }
      13: ?>
      Setelah file koneksi dibuat, silahkan akses melalui browser sehingga memunculkan pesan. Kemungkinan pesan yang terjadi adalah:
      • Jika salah menuliskan password dan muncul pesan seperti berikut, berarti harus di cek lagi penggunaan password pada server masing-masing. Atau kemungkinan kesalahan penulisan pada file koneksi
      • Failed to connect to MySQL: (1045) Access denied for user 'root'@'localhost' (using password: NO)  
      • Jika error nya seperti berikut, maka kemungkinan databasenya belum dibuat atau salah menuliskan nama databasenya. Periksa kembali nama database mysql melalui phpmyadmin atau cek kembali penulisan coding koneksi pada parameter $database.
      • Failed to connect to MySQL: (1049) Unknown database 'db_universitas'  
      • Jika ada pesan berikut berarti Kita berhasil membuat koneksi dengan databse mysql dan siap digunakan untuk membuat CRUD nya.
      • Congratulation... Connection Success 
    • Koneksi PHP dan MySQLi menggunakan gaya pemrograman terstruktur.
    • 1:  <?php  
      2: set_error_handler(error_reporting(0)) ;
      3: $server = "localhost"; # alamat mysql host lokal
      4: $username = "root"; # username mysql default
      5: $password = "password"; # password mysql disesuaikan dengan server masing-masing
      6: $database = "db_universitas"; # nama dabatase yang dibuat
      7: #$koneksi = new mysqli($server,$username,$password,$database);
      8: $koneksi = mysqli_connect($server,$username,$password) or die ("Failed to connect to MySQL, check your configuration.");
      9: if($koneksi){
      10: $pilihdb = mysqli_select_db($koneksi, $database) or die ("Database not selected or not found !!");
      11: if($pilihdb){
      12: echo "Congratulation... Connection Success";
      13: }
      14: }
      15: ?>
      Setelah file koneksi dibuat, silahkan akses melalui browser sehingga memunculkan pesan. Kemungkinan pesan yang terjadi adalah:
      • Jika salah menuliskan password dan muncul pesan seperti berikut, berarti harus di cek lagi penggunaan password pada server masing-masing. Atau kemungkinan kesalahan penulisan pada file koneksi
      • Failed to connect to MySQL, check your configuration.  
      • Jika error nya seperti berikut, maka kemungkinan databasenya belum dibuat atau salah menuliskan nama databasenya. Periksa kembali nama database mysql melalui phpmyadmin atau cek kembali penulisan coding koneksi pada parameter $database.
      • Database not selected or not found !!  
      • Jika ada pesan berikut berarti Kita berhasil membuat koneksi dengan databse mysql dan siap digunakan untuk membuat CRUD nya.
      • Congratulation... Connection Success  
Sampai disini penjelasan tentang pengguaan MySQLi dan PHP. Jika ada yang mau ditanyakan silahkan klik tombol "Poskan Komentar / Pos a Comment" dibawah postingan ini. Terimakasih :)
Suni

Apa Itu PHP Extension dan Apa saja macamnya (MySQL, MySQLi, PDO)

0 komentar
Beberapa dari Kita (termasuk saya) mungkin belum faham dengan yg namanya API dan juga PHP extension. Padahal kita sebagai programmer sering menggunakannya. Nah, di bagian ini  akan diberikan pengantar tentang pilihan yang tersedia mengembangkan aplikasi PHP yang perlu berinteraksi dengan database MySQL. Artikel ini ditulis dan diartikan aseli dari sumbernya yaitu: PHP Net
Apa Itu PHP Extension dan Apa saja macamnya (MySQL, MySQLi, PDO)
PHP Extension
Apa itu API?

Application Programming Interface, atau API, mendefinisikan kelas, metode, fungsi dan variabel yang diperlukan aplikasi untukmelaksanakan tugas yang diinginkan. Dalam kasus aplikasi PHP yang perlu berkomunikasi dengan database, biasanya API diperlukan melalui PHP extension.

API bisa ditulis dalam bentuk prosedural atau berorientasi objek (OOP). Dengan API prosedural Kita dapat memanggil fungsi-fungsi untuk melaksanakan tugas, dan dengan API berorientasi obyek Kita dapat menginisiasi class dan kemudian memanggil metode pada objek yang dihasilkan. Dari dua cara tersebut, API yang berbasis objek biasanya lebih disukai, karena lebih modern dan mengarah kepada kode yang lebih terorganisir.

Saat menulis aplikasi PHP yang perlu terhubung ke server MySQL ada beberapa pilihan API yang tersedia. Disini akan dibahas apa yang tersedia dan bagaimana untuk memilih solusi terbaik untuk aplikasi yang akan Kita buat.

Apa itu Connector?

Dalam dokumentasi MySQL, konektor merujuk sebuah software yang memungkinkan aplikasi untuk terhubung ke server database MySQL. MySQL menyediakan konektor untuk berbagai bahasa, termasuk PHP.

Jika aplikasi PHP memerlukan komunikasi dengan database server, Kitaperlu menulis kode PHP untuk menghubungkannya, termasuk diantaranya query database dan fungsi-fungsi yang berhubungan dengan database lainnya. Sebuah software diperlukan untuk menyediakan API yang akan digunakan aplikasi Kita, dan juga menangani komunikasi antara aplikasi dan database server. Software ini dikenal umum sebagai konektor, karena memungkinkan aplikasi Kita untuk terhubung ke database server.

Apa itu Driver?

Driver adalah software yang dirancang untuk berkomunikasi dengan jenis tertentu dari database server. Driver juga dapat dipanggil menggunakan library, seperti MySQL Client Library atau MySQL Native Driver. Library ini menerapkan protokol tingkat rendah yang digunakan untuk berkomunikasi dengan database server MySQL.

Contohnya, PHP Data Objects (PDO) memungkinkan untuk menggunakan satu dari beberapa database driver. Salah satu driver yang telah tersedia adalah PDO MYSQL driver, yang memungkinkan untuk berinteraksi dengan server MySQL.
Terkadangorang menggunakan konektor dan driver secara bergantian, ini dapat membingungkan. Dalam dokumentasi MySQL yang berhubungan dengan istilah "driver" dicadangkan untuk perangkat lunak yang menyediakan bagian database spesifik dari paket konektor.

Apa itu Extension?

Dalam dokumentasi PHP Kita akan menemukan istilah lain dari ekstensi (extension). Kode PHP terdiri dari inti, dengan ekstensi opsional untuk fungsionalitas inti. Ekstensi PHP (PHP Extension) MySQL-related, seperti mysqli extension, dan mysql extension, diimplementasikan menggunakan PHP extension framework.

Extension biasanya membuka API kepada programmer PHP, yang memungkinkan untuk digunakan dalam pemrograman. Namun, beberapa extension yang menggunakan PHP extension framework tidak mengekspos API kepada programmer PHP.
PDO MySQL driver extension, misalnya, tidak membuka semua API untuk programmer PHP, tetapi menyediakan antarmuka ke lapisan PDO di atasnya. Istilah API dan ekstensi tidak harus diartikan sama, sebagian extension mungkin tidak selalu mengekspos API untuk programmer.

Apa saja fasilitas utama PHP API untuk digunakan dengan MySQL?

Ada tiga pilihan API utama yang dapat digunakan untuk menghubungkan PHP ke database server MySQL:
  1. PHP's MySQL Extension
  2. PHP's MySQLi Extension
  3. PHP Data Objects (PDO)
Masing-masing memiliki kelebihan dan kekurangan. Pembahasan berikut bertujuan untuk memberikan pengenalan singkat pada aspek inti dari setiap API.

Apa itu PHP MySQL Extension?

Merupakan ekstensi asli  yang dirancang untuk mengembangkan aplikasi PHP yang berinteraksi dengan database MySQL. Mysql extension menyediakan antarmuka prosedural dan dimaksudkan untuk digunakan hanya dengan MySQL versi dari 4.1.3 kebawah. Ekstensi ini dapat digunakan dengan versi MySQL 4.1.3 atau yang lebih baru, tapi tidak semua fitur server MySQL terbaru dapat digunakan.

Catatan: Jika Kita menggunakan MySQL versi 4.1.3 atau yang lebih baru sangat disarankan agar Kita menggunakan ekstensi mysqli sebagai penggantinya. 

Kode sumber dari ekstensi MySQL terletak di direktori ekstensi PHP ext / mysql

Untuk informasi lebih lanjut tentang ekstensi mysql, lihat MySQL (Original).

Apa itu PHP MySQLi Extension?

MySQLi Extension, atau seperti yang dikenal, MySQL "improved" extension, dikembangkan untuk mengambil keuntungan dari fitur baru yang ditemukan di MySQL sistem versi 4.1.3 dan yang lebih baru. MySQL extension disertakan dalam PHP versi 5 dan yang lebih baru.

Ekstensi MySQLi memiliki sejumlah kelebihan, diantaranya:
  1. Object-oriented interface
  2. Support for Prepared Statements
  3. Support for Multiple Statements
  4. Support for Transactions
  5. Enhanced debugging capabilities
  6. Embedded server support
Catatan: Jika Kita menggunakan MySQL versi 4.1.3 atau yang lebih baru sangat disarankan untuk menggunakan extension ini.

Selain menyediakan antarmuka berorientasi objek, MySQLi extension juga menyediakan antarmuka prosedural.

Ekstensi mysqli dibangun menggunakan PHP extension framework, kode sumbernya terletak pada direktori ext / mysqli

Untuk informasi lebih lanjut tentang perpanjangan mysqli, lihat MySQLi.

Apa itu PDO?

PHP Data Objects, atau PDO, merupakan database abstraction layer khusus untuk aplikasi PHP. PDO menyediakan API yang konsisten untuk aplikasi PHP terlepas dari jenis server database aplikasi yang digunakan. Secara teori, jika menggunakan PDO API,  Kita bisa beralih database server dengan mudah. Misalnya dari Firebird ke MySQL, dan hanya perlu membuat perubahan kecil untuk kode PHP yand sudah kita buat.

PDO memiliki kelebihan, yaitu lebih bersih, lebih sederhana, dan portabel, kelemahan utamanya adalah bahwa tidak memungkinkan untuk menggunakan semua fitur canggih yang tersedia dalam versi terbaru dari server MySQL. Misalnya, PDO tidak memungkinkan Kita untuk menggunakan dukungan MySQL Multiple Statements.

PDO diimplementasikan menggunakan PHP extension framework, kode sumbernya terletak di direktori ext / PDO

Untuk informasi lebih lanjut tentang PDO, lihat PDO.

Apa itu PDO MYSQL driver?

PDO MYSQL driver tidak  seperti API, dari perspektif programmer PHP. Faktanya PDO MYSQL driver berada di lapisan bawah PDO itu sendiri serta menyediakan fungsionalitas MySQL. Programmer masih menyebut PDO API, tapi PDO menggunakan PDO MySQL driver  untuk melakukan komunikasi dengan server MySQL.

PDO MYSQL Drivermerupakan salah satu dari beberapa driver PDO. Driver PDO yang lain tersedia untuk server database Firebird dan PostgreSQL.

PDO MYSQL driver diimplementasikan menggunakan PHP extension Framework. Kode sumbernya terletak di direktori ext / pdo_mysql

Untuk informasi lebih lanjut tentang PDO MYSQL driver, lihat MySQL (PDO).

Apa itu PHP MySQL Native Driver?

Untuk berkomunikasi dengan MySQL database server  mysql extension, mysqli dan PDO MYSQL driver menggunakan library tingkat rendah untuk mengimplementasikan protokol yang diperlukan. Dahulu, satu-satunya library yang tersedia adalah MySQL Client Library, atau dikenal sebagai libmysqlclient.

Namun, antarmuka yang disajikan oleh libmysqlclient tidak dioptimalkan untuk komunikasi dengan aplikasi PHP, libmysqlclientawalnya dirancang dengan aplikasi C. Untuk alasan ini MySQL native driver, mysqlnd, dikembangkan sebagai alternatif untuk libmysqlclient pada aplikasi PHP.

Mysqlextension, mysqli extension dan PDO MySQL driver dapat dikonfigurasi secara individual untuk menggunakan libmysqlclient atau mysqlnd. mysqlnddirancang khusus untuk digunakan dalam sistem PHP yang memiliki banyak memori dan tambahan kecepatan melaluilibmysqlclient. Kita sangat dianjurkan untuk mengambil keuntungan dari perbaikan ini.

Catatan: MySQL native driver hanya dapat digunakan dengan server MySQL versi 4.1.3 dan yang lebih baru.

MySQL driver asli diimplementasikan menggunakan PHP extension framework. Kode sumber terletak di  ext / mysqlnd

Perbandingan Fitur

Tabel berikut membandingkan fungsi dari tiga metode utama menghubungkan ke MySQL dari PHP:

Sumber: PHP Net
Suni

PSG vs Real Madrid Live Stream! Champions League

0 komentar
Suni

Membuat Halaman Adminisnistrator dan CRUD Menggunakan Konsep Pemrograman Berbasis Object (OOP) Bagian 6/6

0 komentar
Pada bagian ini kita akan membahas mengenai pembuatan form untuk melakukan perubahan terhadap data yang sudah diinput namun terdapat sedikit kesalahan. Akan dibuat juga file untuk menangkap data update-an tersebut. Bagi yang belum membuat file-file yang dibutuhkan sebelumnya, silahkan baca dulu postingan sebelumnya Membuat Halaman Adminisnistrator dan CRUD Menggunakan Konsep Pemrograman Berbasis Object (OOP) Bagian 5/6

Object Oriented Programming

  • Pembuatan form update untuk mengubah data yang sudah diinput
    • formUpdateMahasiswa.php
    • 1:  <?php  
      2: include("phpclass/CMahasiswa.php");
      3: $nimna = $_GET['nim'];
      4: $cm = new CMahasiswa();
      5: $query = $cm->getEdit($nimna);
      6: $hasil = mysql_fetch_array($query);
      7: ?>
      8: <form action="updateMahasiswa.php" method="POST" class="form-horizontal" role="form">
      9: <input type="hidden" name="nim_asli" value="<?=$hasil[0];?>">
      10: <div class="form-group">
      11: <label class="col-md-4 control-label">NIM</label>
      12: <div class="col-md-6">
      13: <input type="text" class="form-control" name="nim" value="<?=$hasil[0];?>" placeholder="ex:1808208" maxlength="8" />
      14: </div>
      15: </div>
      16: <div class="form-group">
      17: <label class="col-md-4 control-label">Nama Mahasiswa</label>
      18: <div class="col-md-6">
      19: <input type="text" class="form-control" name="nmmhs" value="<?=$hasil[1];?>" placeholder="ex:sumpeno" />
      20: </div>
      21: </div>
      22: <div class="form-group">
      23: <label class="col-md-4 control-label">Jenis Kelamin</label>
      24: <div class="col-md-6">
      25: <input type="radio" name="jnskel" value="Laki-Laki" <?php echo $hasil[2]=='Laki-Laki'?'checked="checked"':'';?> />Laki-Laki
      26: <input type="radio" name="jnskel" value="Perempuan" <?php echo $hasil[2]=='Perempuan'?'checked="checked"':'';?> />Perempuan
      27: </div>
      28: </div>
      29: <div class="form-group">
      30: <label class="col-md-4 control-label">Agama</label>
      31: <div class="col-md-6">
      32: <select size="1" name="agama" class="form-control">
      33: <option value="Islam" <?php echo $hasil[3]=='Islam'?'selected="selected"':'';?> >Islam</option>
      34: <option value="Kristen" <?php echo $hasil[3]=='Kristen'?'selected="selected"':'';?>>Kristen</option>
      35: <option value="Katholik" <?php echo $hasil[3]=='Katholik'?'selected="selected"':'';?>>Katholik</option>
      36: <option value="Budha" <?php echo $hasil[3]=='Budha'?'selected="selected"':'';?>>Budha</option>
      37: <option value="Hindu" <?php echo $hasil[3]=='Hindu'?'selected="selected"':'';?>>Hindu</option>
      38: </select>
      39: </div>
      40: </div>
      41: <div class="form-group">
      42: <div class="col-md-6 col-md-offset-4">
      43: <button type="submit" class="btn btn-primary">Simpan</button>
      44: <button type="reset" class="btn btn-danger" onclick="history.go(-1)">Batal</button>
      45: </div>
      46: </div>
      47: </form>
      Tampilannya akan menjadi sebagai berikut:
      Form Update Mahasiswa
      Form Update Mahasiswa
    • formUpdateMatakuliah.php
    • 1:  <?php  
      2: include("phpclass/CMatkul.php");
      3: $kodena= $_GET['kode'];
      4: $cm = new CMatkul();
      5: $query = $cm->getEdit($kodena);
      6: $hasil = mysql_fetch_array($query);
      7: ?>
      8: <form name="frmMatkul" action="updateMatakuliah.php" method="POST" class="form-horizontal" role="form">
      9: <input type="hidden" name="kode_asli" value="<?=$hasil[0];?>">
      10: <div class="form-group">
      11: <label class="col-md-4 control-label">Kode</label>
      12: <div class="col-md-6">
      13: <input type="text" class="form-control" name="kode" value="<?=$hasil[0];?>" required="required" maxlength="3" />
      14: </div>
      15: </div>
      16: <div class="form-group">
      17: <label class="col-md-4 control-label">Mata Kuliah</label>
      18: <div class="col-md-6">
      19: <input type="text" class="form-control" name="matakuliah" value="<?=$hasil[2];?>" required="required" />
      20: </div>
      21: </div>
      22: <div class="form-group">
      23: <label class="col-md-4 control-label">Kode Dosen</label>
      24: <div class="col-md-6">
      25: <input type="text" class="form-control" name="dosen" value="<?=$hasil[1];?>" required="required" maxlength="3" />
      26: </div>
      27: </div>
      28: <div class="form-group">
      29: <label class="col-md-4 control-label">Jumlah SKS</label>
      30: <div class="col-md-6">
      31: <input type="text" class="form-control" name="sks" value="<?=$hasil[3];?>" required="required" />
      32: </div>
      33: </div>
      34: <div class="form-group">
      35: <div class="col-md-6 col-md-offset-4">
      36: <button type="submit" class="btn btn-primary">Simpan</button>
      37: <button type="reset" class="btn btn-danger" onclick="history.go(-1)">Batal</button>
      38: </div>
      39: </div>
      40: </form>
      Tampilannya akan menjadi sebagai berikut:
      Form Update Matakuliah
      Form Update Matakuliah
  • Pembuatan file untuk menerima proses update dari form update

    • updateMahasiswa.php
    • 1:  <?php   
      2: include ('phpclass/CMahasiswa.php');
      3: $id = $_POST['nim_asli'];
      4: $nim = $_POST['nim'];
      5: $nmmhs = $_POST['nmmhs'];
      6: $jnskel= $_POST['jnskel'];
      7: $agama = $_POST['agama'];
      8: $cm = new CMahasiswa();
      9: $cm->setNim($nim);
      10: $cm->setNamamahasiswa($nmmhs);
      11: $cm->setJeniskelamin($jnskel);
      12: $cm->setAgama($agama);
      13: $hasil = $cm->getUpdate($id);
      14: if($hasil){
      15: ?>
      16: <script language="javascript">
      17: alert("Anda Berhasil Mengubah Data");
      18: document.location="index.php?m=listMahasiswa";
      19: </script>
      20: <?php
      21: }else{
      22: ?>
      23: <script language="javascript">
      24: alert("Anda Gagal Mengubah Data");
      25: history.go(-1);
      26: </script>
      27: <?php
      28: }
      29: ?>
    • updateMatakuliah.php
    • 1:  <?php  
      2: include('phpclass/CMatkul.php');
      3: $id = $_POST['kode_asli'];
      4: $kode = $_POST['kode'];
      5: $matakuliah = $_POST['matakuliah'];
      6: $sks = $_POST['sks'];
      7: $dosen = $_POST['dosen'];
      8: $mk = new CMatkul();
      9: $mk->setKode($kode);
      10: $mk->setMatakuliah($matakuliah);
      11: $mk->setSks($sks);
      12: $mk->setDosen($dosen);
      13: $hasil = $mk->getUpdate($id);
      14: if($hasil){
      15: ?>
      16: <script language="javascript">
      17: alert("Anda berhasil mengubah data matakuliah");
      18: document.location="index.php?m=listMatakuliah";
      19: </script>
      20: <?php
      21: }else{
      22: ?>
      23: <script language="javascript">
      24: alert("Anda Gagal mengubah data matakuliah");
      25: history.go(-1);
      26: </script>
      27: <?php
      28: }
      29: ?>

  • Pembuatan Navigasi (navbar), halaman Home, dan proses Logout.
    • navbar.php
    • 1:  <nav class="navbar navbar-inverse">  
      2: <div class="container-fluid">
      3: <div class="navbar-header">
      4: <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1">
      5: <span class="sr-only">Toggle Navigation</span>
      6: <span class="icon-bar"></span>
      7: <span class="icon-bar"></span>
      8: <span class="icon-bar"></span>
      9: </button>
      10: <a class="navbar-brand" href="#">Portal</a>
      11: </div>
      12: <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
      13: <ul class="nav navbar-nav">
      14: <li class="active">
      15: <a href="index.php?m=home">Home</a>
      16: </li>
      17: <li>
      18: <a href="index.php?m=listMahasiswa">Data Mahasiswa</a>
      19: </li>
      20: <li>
      21: <a href="index.php?m=listMatakuliah">Data Matakuliah</a>
      22: </li>
      23: <li>
      24: <a href="index.php?m=listAdmin">Data Admin</a>
      25: </li>
      26: </ul>
      27: <?php
      28: session_start(); #update: hapus saja
      29: if($_SESSION['user'] != ''){
      30: ?>
      31: <ul class="nav navbar-nav navbar-right">
      32: <li class="dropdown">
      33: <a href="#" class="dropdown-toggle" data-toggle="dropdown"><?php echo ucwords($_SESSION['user']);?> <b class="caret"></b></a>
      34: <ul class="dropdown-menu">
      35: <li><a href="logout.php">Logout</a></li>
      36: </ul>
      37: </li>
      38: </ul>
      39: <?php
      40: }else{
      41: echo"";
      42: }
      43: ?>
      44: </div>
      45: </div>
      46: </nav>
    • home.php
    • 1:  <h1> Halaman Home</h1>  
      2: <ol>
      3: <li> <a href="index.php?m=formMahasiswa">Form Mahasiswa</a> </li>
      4: <li> <a href="index.php?m=formMatakuliah">Form Matakuliah</a> </li>
      5: </ol>
      Tampilannya akan menjadi sebagai berikut:
      Halaman Home
      Halaman Home
    • logout.php
    • 1:  <?php  
      2: session_start();
      3: session_destroy();
      4: ?>
      5: <script language="javascript">
      6: alert("Logout Berhasil.");
      7: document.location.href="index.php";
      8: </script>
Okey, sampai disini pembahasan kita. Ini merupakan bagian akhir, seharusnya akan menghasilkan aplikasi yang lumayan baik. Silahkan melihat demo atau download full code disini.

UPDATE:

Download full code nya: download code
Suni

Membuat Halaman Adminisnistrator dan CRUD Menggunakan Konsep Pemrograman Berbasis Object (OOP) Bagian 5/6

0 komentar
Pada bagian ini kita akan membahas mengenai pembuatan halaman untuk menampilkan list data yang sudah diinput menggunakan form. Bagi yang belum membuat form input nya, silahkan baca dulu postingan sebelumnya Membuat Halaman Adminisnistrator dan CRUDMenggunakan Konsep Pemrograman Berbasis Object (OOP) Bagian 4/6

Membuat Halaman Adminisnistrator dan CRUD Menggunakan Konsep Pemrograman Berbasis Object (OOP)
Object Oriented Programming
  • Pembuatan halaman untuk menampilkan data dari database
    • listMahasiswa.php
    • 1:  <?php  
      2: include("phpclass/CMahasiswa.php");
      3: $cm = new CMahasiswa();
      4: $query = $cm->getList();
      5: #pagging
      6: $jumlah = mysql_num_rows($query);
      7: $limit= 5;
      8: if(isset($_GET['page'])){
      9: $hal = $_GET['page'];
      10: }else{
      11: $hal = 1;
      12: }
      13: $mulai = ($hal - 1)* $limit;
      14: $pagging = $cm->getPage($mulai,$limit);
      15: # select * from mahasiswa limit {$mulai},{$limit}
      16: $totalpage = ceil($jumlah/$limit);
      17: ?>
      18: <table width="75%" class="table">
      19: <tr>
      20: <td colspan="5">
      21: <a href="index.php?m=formMahasiswa" class="btn btn-danger">Tambah Mahasiswa</a>
      22: </td>
      23: <td colspan="2">
      24: <?php
      25: if(!isset($_GET['page'])){
      26: $pageof = 1;
      27: }else{
      28: $pageof = $_GET['page'];
      29: }
      30: echo "Halaman $pageof dari $totalpage";
      31: ?>
      32: </td>
      33: </tr>
      34: <tr>
      35: <th>No</th>
      36: <th>NIM</th>
      37: <th>Nama Mahasiswa</th>
      38: <th>Jenis Kelamin</th>
      39: <th>Agama</th>
      40: <th>Hapus</th>
      41: <th>Edit</th>
      42: </tr>
      43: <?php
      44: $no=$mulai + 1;
      45: while($row = mysql_fetch_array($pagging)){
      46: ?>
      47: <tr>
      48: <td><?=$no;?></td>
      49: <td><?=$row['nim'];?></td>
      50: <td><?=ucwords($row['nmmhs']);?></td>
      51: <td><?=$row['jnskel'];?></td>
      52: <td><?=$row['agama'];?></td>
      53: <td><a href="hapusMahasiswa.php?nim=<?=$row['nim'];?>" onClick="return konfirmasi('<?=$row['nmmhs'];?>')">Hapus</a></td>
      54: <td><a href="index.php?m=formUpdateMahasiswa&nim=<?=$row['nim'];?>" >Edit</a></td>
      55: </tr>
      56: <?php
      57: $no++;
      58: }
      59: ?>
      60: <tr>
      61: <td colspan="7">
      62: <ul class="pagination">
      63: <?php
      64: if($mulai > 1) echo "<li><a href='index.php?m=listMahasiswa&page=".($hal-1)."'>Prev</a></li>";
      65: for ($a = 1; $a <= $totalpage;$a++){
      66: echo "<li><a href='index.php?m=listMahasiswa&page=".$a."'>$a</a></li>";
      67: }
      68: if($hal < $totalpage) echo "<li><a href='index.php?m=listMahasiswa&page=".($hal+1)."'>Next</a></li> ";
      69: ?>
      70: </ul>
      71: </td>
      72: </tr>
      73: </table>
      74: <!-- pagging -->
      75: <script language="javascript">
      76: function konfirmasi(del){
      77: tanya = confirm('PERHATIAN !!! \n Anda akan menghapus Mahasiswa dengan nama " '+ del + ' " \n Lanjutkan ?');
      78: if (tanya == true)
      79: return true;
      80: else
      81: return false;
      82: };
      83: </script>
      Tampilannya akan menjadi sebagai berikut:
      Daftar List Mahasiswa
      Daftar List Mahasiswa
    • listMatakuliah.php
    • 1:  <?php  
      2: include("phpclass/CMatkul.php");
      3: $mk = new CMatkul();
      4: $query = $mk->getList();
      5: #pagging
      6: $jumlah = mysql_num_rows($query);
      7: $limit= 5;
      8: if(isset($_GET['page'])){
      9: $hal = $_GET['page'];
      10: }else{
      11: $hal = 1;
      12: }
      13: $mulai = ($hal - 1)* $limit;
      14: $pagging = $mk->getPage($mulai,$limit);
      15: # select * from mahasiswa limit {$mulai},{$limit}
      16: $totalpage = ceil($jumlah/$limit);
      17: ?>
      18: <table width="75%" class="table">
      19: <tr>
      20: <td colspan="5">
      21: <a href="index.php?m=formMatakuliah" class="btn btn-danger">Tambah Matakuliah</a>
      22: </td>
      23: <td colspan="2">
      24: <?php
      25: if(!isset($_GET['page'])){
      26: $pageof = 1;
      27: }else{
      28: $pageof = $_GET['page'];
      29: }
      30: echo "Halaman $pageof dari $totalpage";
      31: ?>
      32: </td>
      33: </tr>
      34: <tr>
      35: <th>No</th>
      36: <th>Kode Matkul</th>
      37: <th>Matakuliah</th>
      38: <th>SKS</th>
      39: <th>Dosen</th>
      40: <th>Hapus</th>
      41: <th>Edit</th>
      42: </tr>
      43: <?php
      44: $no = $mulai + 1;
      45: while($row = mysql_fetch_array($pagging)){
      46: ?>
      47: <tr>
      48: <td><?=$no;?></td>
      49: <td><?=$row['kode'];?></td>
      50: <td><?=ucwords($row['matakuliah']);?></td>
      51: <td><?=$row['sks'];?></td>
      52: <td><?=strtoupper($row['dosen']);?></td>
      53: <td><a href="hapusMatakuliah.php?kode=<?=$row['kode'];?>" onClick="return konfirmasi('<?=$row['matakuliah'];?>')">Hapus</a></td>
      54: <td><a href="index.php?m=formUpdateMatakuliah&kode=<?=$row['kode'];?>">Edit</a></td>
      55: </tr>
      56: <?php
      57: $no++;
      58: }
      59: ?>
      60: <tr>
      61: <td colspan="7">
      62: <ul class="pagination">
      63: <?php
      64: if($mulai > 1) echo "<li><a href='index.php?m=listMatakuliah&page=".($hal-1)."'>Prev</a></li>";
      65: for ($a = 1; $a <= $totalpage;$a++){
      66: echo "<li><a href='index.php?m=listMatakuliah&page=".$a."'>$a</a></li>";
      67: }
      68: if($hal < $totalpage) echo "<li><a href='index.php?m=listMatakuliah&page=".($hal+1)."'>Next</a></li> ";
      69: ?>
      70: </ul>
      71: </td>
      72: </tr>
      73: </table>
      74: <script language="javascript">
      75: function konfirmasi(del){
      76: tanya = confirm('PERHATIAN !!! \n Anda akan menghapus matakuliah dengan nama " '+ del + ' " \n Lanjutkan ?');
      77: if (tanya == true)
      78: return true;
      79: else
      80: return false;
      81: };
      82: </script>
      Tampilannya akan menjadi sebagai berikut:
      Daftar List Matakuliah
      Daftar List Matakuliah
    • listAdmin.php
    • 1:  <?php  
      2: include("phpclass/CAdmin.php");
      3: $cm = new CAdmin();
      4: $query = $cm->getList();
      5: #pagging
      6: $jumlah = mysql_num_rows($query);
      7: $limit= 5;
      8: if(isset($_GET['page'])){
      9: $hal = $_GET['page'];
      10: }else{
      11: $hal = 1;
      12: }
      13: $mulai = ($hal - 1)* $limit;
      14: $pagging = $cm->getPage($mulai,$limit);
      15: # select * from mahasiswa limit {$mulai},{$limit}
      16: $totalpage = ceil($jumlah/$limit);
      17: ?>
      18: <table width="75%" class="table">
      19: <tr>
      20: <td colspan="5" align="right">
      21: <?php
      22: if(!isset($_GET['page'])){
      23: $pageof = 1;
      24: }else{
      25: $pageof = $_GET['page'];
      26: }
      27: echo "Halaman $pageof dari $totalpage";
      28: ?>
      29: </td>
      30: </tr>
      31: <tr>
      32: <th>No</th>
      33: <th>Nama</th>
      34: <th>Username</th>
      35: <th>Password</th>
      36: <th>Masuk terakhir pada:</th>
      37: </tr>
      38: <?php
      39: $no=$mulai + 1;
      40: while($row = mysql_fetch_array($pagging)){
      41: ?>
      42: <tr>
      43: <td><?=$no;?></td>
      44: <td><?=ucwords($row['nama']);?></td>
      45: <td><?=$row['user'];?></td>
      46: <td><?=substr($row['pass'],0,20);?> ...</td>
      47: <td><?=$row['log'];?></td>
      48: </tr>
      49: <?php
      50: $no++;
      51: }
      52: ?>
      53: <tr>
      54: <td colspan="5">
      55: <ul class="pagination">
      56: <?php
      57: if($mulai > 1) echo "<li><a href='index.php?m=listAdmin&page=".($hal-1)."'>Prev</a></li>";
      58: for ($a = 1; $a <= $totalpage;$a++){
      59: echo "<li><a href='index.php?m=listAdmin&page=".$a."'>$a</a></li>";
      60: }
      61: if($hal < $totalpage) echo "<li><a href='index.php?m=listAdmin&page=".($hal+1)."'>Next</a></li> ";
      62: ?>
      63: </ul>
      64: </td>
      65: </tr>
      66: </table>
      67: <!-- pagging -->
      Tampilannya akan mejadi sebagai berikut:
      Daftar List Admin
      Daftar List Admin
  • Pembuatan file untuk proses penghapusan data
    • hapusMahasiswa.php
    • 1:  <?php  
      2: include ("phpclass/CMahasiswa.php");
      3: $nimna = $_GET['nim'];
      4: $cm = new CMahasiswa();
      5: $hps = $cm->getDelete($nimna);
      6: if($hps){
      7: ?>
      8: <script language="javascript">
      9: alert("Berhasil Menghapus data");
      10: document.location="index.php?m=listMahasiswa";
      11: </script>
      12: <?php
      13: }else{
      14: ?>
      15: <script language="javascript">
      16: alert("Gagal Menghapus data");
      17: document.location="index.php?m=listMahasiswa";
      18: </script>
      19: <?php
      20: }
      21: ?>
    • hapusMatakuliah.php
    • 1:  <?php  
      2: include ("phpclass/CMatkul.php");
      3: $id = $_GET['kode'];
      4: $cm = new CMatkul();
      5: $hps = $cm->getDelete($id);
      6: if($hps){
      7: ?>
      8: <script language="javascript">
      9: alert("Berhasil Menghapus data");
      10: document.location="index.php?m=listMatakuliah";
      11: </script>
      12: <?php
      13: }else{
      14: ?>
      15: <script language="javascript">
      16: alert("Gagal Menghapus data");
      17: document.location="index.php?m=listMatakuliah";
      18: </script>
      19: <?php
      20: }
      21: ?>
Okey, sampai disini dulu, kita akan bahas selanjutnya di bagian 6 yaitu Membuat Halaman Adminisnistrator dan CRUD Menggunakan Konsep Pemrograman Berbasis Object (OOP) Bagian 6/6

UPDATE:
Lihat demo programnya: demo
Download full code nya: download code 
Suni

Membuat Halaman Adminisnistrator dan CRUD Menggunakan Konsep Pemrograman Berbasis Object (OOP) Bagian 4/6

0 komentar
Pada bagian ini kita akan membahas mengenai pembuatan form untuk meakukan input ke database sekaligus file proses untuk menangkap dan mengirim data ke dalam databasenya. Bagi yang belum membuat file lain yang dibutuhkan, silahkan baca dulu postingan sebelumnya Membuat Halaman Adminisnistrator dan CRUD Menggunakan Konsep Pemrograman Berbasis Object (OOP) Bagian 3/6

Membuat Halaman Adminisnistrator dan CRUD Menggunakan Konsep Pemrograman Berbasis Object (OOP)
Object Oriented Programming

  • Pembuatan form untuk melakukan input ke dalam database, termasuk form register dan form login
    • formMahasiswa.php
    • 1:  <form name="frmMahasiswa" action="prosesMahasiswa.php" method="POST" class="form-horizontal" role="form">  
      2: <div class="form-group">
      3: <label class="col-md-4 control-label">NIM</label>
      4: <div class="col-md-6">
      5: <input type="text" class="form-control" name="nim" value="" placeholder="ex:1808208" maxlength="8" />
      6: </div>
      7: </div>
      8: <div class="form-group">
      9: <label class="col-md-4 control-label">Nama Mahasiswa</label>
      10: <div class="col-md-6">
      11: <input type="text" class="form-control" name="nmmhs" value="" placeholder="ex:sumpeno" />
      12: </div>
      13: </div>
      14: <div class="form-group">
      15: <label class="col-md-4 control-label">Jenis Kelamin</label>
      16: <div class="col-md-6">
      17: <input type="radio" name="jnskel" value="Laki-Laki" />Laki-Laki
      18: <input type="radio" name="jnskel" value="Perempuan" />Perempuan
      19: </div>
      20: </div>
      21: <div class="form-group">
      22: <label class="col-md-4 control-label">Agama</label>
      23: <div class="col-md-6">
      24: <select size="1" name="agama" class="form-control">
      25: <option value="Islam">Islam</option>
      26: <option value="Kristen">Kristen</option>
      27: <option value="Katholik">Katholik</option>
      28: <option value="Budha">Budha</option>
      29: <option value="Hindu">Hindu</option>
      30: </select>
      31: </div>
      32: </div>
      33: <div class="form-group">
      34: <div class="col-md-6 col-md-offset-4">
      35: <button type="submit" class="btn btn-primary">Simpan</button>
      36: <button type="reset" class="btn btn-danger">Batal</button>
      37: </div>
      38: </div>
      39: </form>
      Tampilannya akan menjadi sebagai berikut:
      Form input mahasiswa
      Form input mahasiswa
    • formMatakuliah.php
    • 1:  <form name="frmMatkul" action="prosesMatakuliah.php" method="POST" class="form-horizontal" role="form">  
      2: <div class="form-group">
      3: <label class="col-md-4 control-label">Kode</label>
      4: <div class="col-md-6">
      5: <input type="text" class="form-control" name="kode" value="" required="required" maxlength="3" />
      6: </div>
      7: </div>
      8: <div class="form-group">
      9: <label class="col-md-4 control-label">Mata Kuliah</label>
      10: <div class="col-md-6">
      11: <input type="text" class="form-control" name="matakuliah" value="" required="required" />
      12: </div>
      13: </div>
      14: <div class="form-group">
      15: <label class="col-md-4 control-label">Kode Dosen</label>
      16: <div class="col-md-6">
      17: <input type="text" class="form-control" name="dosen" value="" required="required" maxlength="3" />
      18: </div>
      19: </div>
      20: <div class="form-group">
      21: <label class="col-md-4 control-label">Jumlah SKS</label>
      22: <div class="col-md-6">
      23: <input type="text" class="form-control" name="sks" value="" required="required" />
      24: </div>
      25: </div>
      26: <div class="form-group">
      27: <div class="col-md-6 col-md-offset-4">
      28: <button type="submit" class="btn btn-primary">Simpan</button>
      29: <button type="reset" class="btn btn-danger">Batal</button>
      30: </div>
      31: </div>
      32: </form>
      Tampilannya akan menjadi sebagai berikut:
      Form input matakuliah
      Form input matakuliah
    • formAdmin.php
    • 1:  <form name="frmAdmin" action="prosesAdmin.php" method="POST" class="form-horizontal" role="form">  
      2: <div class="form-group">
      3: <label class="col-md-4 control-label">Nama</label>
      4: <div class="col-md-6">
      5: <input type="text" class="form-control" name="nama" value="" required="required" placeholder="Nama Anda" />
      6: </div>
      7: </div>
      8: <div class="form-group">
      9: <label class="col-md-4 control-label">Username</label>
      10: <div class="col-md-6">
      11: <input type="text" class="form-control" name="username" value="" required="required" placeholder="Username" />
      12: </div>
      13: </div>
      14: <div class="form-group">
      15: <label class="col-md-4 control-label">Password</label>
      16: <div class="col-md-6">
      17: <input type="password" class="form-control" name="password1" value="" required="required" maxlength="8" placeholder="alpha max 8 char" />
      18: </div>
      19: </div>
      20: <div class="form-group">
      21: <label class="col-md-4 control-label">Konfirmasi Password</label>
      22: <div class="col-md-6">
      23: <input type="password" class="form-control" name="password2" value="" required="required" maxlength="8" placeholder="alpha max 8 char" />
      24: </div>
      25: </div>
      26: <div class="form-group">
      27: <div class="col-md-6 col-md-offset-4">
      28: <button type="submit" class="btn btn-primary">Register</button>
      29: <a href="index.php?m=login">Have an account, Login. </a>
      30: </div>
      31: </div>
      32: </form>
      Tampilannyan akan menjadi sebagai berikut:
      Form input admin (Register)
      Form input admin (Register)
    • formLogin.php
    • 1:  <form method="post" action="prosesLogin.php" name="frmLogin" class="form-horizontal">  
      2: <div class="form-group">
      3: <label class="col-md-4 control-label">Username</label>
      4: <div class="col-md-6">
      5: <input type="text" class="form-control" name="u_name" value="" required placeholder="username">
      6: </div>
      7: </div>
      8: <div class="form-group">
      9: <label class="col-md-4 control-label">Password</label>
      10: <div class="col-md-6">
      11: <input type="password" class="form-control" name="p_word" value="" required placeholder="password">
      12: </div>
      13: </div>
      14: <div class="form-group">
      15: <div class="col-md-6 col-md-offset-4">
      16: <input type="submit" class="btn btn-primary" name="proses" value="Sign In" style="margin-right: 15px;">
      17: <a href="index.php?m=formAdmin">Don't have an account, Register? </a>
      18: </div>
      19: </div>
      20: </form>
      Tampilannya akan menjadi sebagai berikut:
      Form login
      Form Login
  • Pembuatan file proses untuk menyimpan hasil kiriman dari form ke dalam database melalui file class
    • prosesMahasiswa.php
    • 1:  <?php  
      2: include ('phpclass/CMahasiswa.php');
      3: $nim = $_POST['nim'];
      4: $nmmhs = $_POST['nmmhs'];
      5: $jnskel = $_POST['jnskel'];
      6: $agama = $_POST['agama'];
      7: $cm = new CMahasiswa();
      8: $cm->setNim($nim);
      9: $cm->setNamamahasiswa($nmmhs);
      10: $cm->setJeniskelamin($jnskel);
      11: $cm->setAgama($agama);
      12: $hasil = $cm->getInsert();
      13: if($hasil){
      14: ?>
      15: <script language="javascript">
      16: alert("Anda Berhasil Menyimpan Data");
      17: document.location="index.php?m=listMahasiswa";
      18: </script>
      19: <?php
      20: }else{
      21: ?>
      22: <script language="javascript">
      23: alert("Anda Gagal Menyimpan Data");
      24: document.location="index.php?m=formMahasiswa";
      25: </script>
      26: <?php
      27: }
      28: ?>
    • prosesMatakuliah.php
    • 1:  <?php  
      2: include('phpclass/CMatkul.php');
      3: $kode = $_POST['kode'];
      4: $matakuliah= $_POST['matakuliah'];
      5: $sks = $_POST['sks'];
      6: $dosen = $_POST['dosen'];
      7: $mk = new CMatkul();
      8: $mk->setKode($kode);
      9: $mk->setMatakuliah($matakuliah);
      10: $mk->setSks($sks);
      11: $mk->setDosen($dosen);
      12: $hasil = $mk->getInsert();
      13: if($hasil){
      14: ?>
      15: <script language="javascript">
      16: alert("Anda berhasil menginput data matakuliah");
      17: document.location="index.php?m=listMatakuliah";
      18: </script>
      19: <?php
      20: }else{
      21: ?>
      22: <script language="javascript">
      23: alert("Anda Gagal menginput data matakuliah");
      24: history.go(-1);
      25: </script>
      26: <?php
      27: }
      28: ?>
    • prosesAdmin.php
    • 1:  <?php  
      2: include('phpclass/CAdmin.php');
      3: $nama = $_POST['nama'];
      4: $username = $_POST['username'];
      5: $password1 = $_POST['password1'];
      6: $password2 = $_POST['password2'];
      7: if ($password1 != $password2){
      8: ?>
      9: <script language="javascript">
      10: alert("Password Anda tidak sesuai, silahkan ulangi.");
      11: history.go(-1);
      12: </script>
      13: <?php
      14: }else{
      15: $adm = new CAdmin();
      16: $adm->setNama($nama);
      17: $adm->setUsername($username);
      18: $adm->setPassword($password2);
      19: $hasil = $adm->getInsert();
      20: if($hasil){
      21: ?>
      22: <script language="javascript">
      23: alert("Anda berhasil registrasi");
      24: document.location="index.php";
      25: </script>
      26: <?php
      27: }else{
      28: ?>
      29: <script language="javascript">
      30: alert("Anda Gagal Registrasi");
      31: history.go(-1);
      32: </script>
      33: <?php
      34: }
      35: }
      36: ?>
    • prosesLogin.php
    • 1:  <?php  
      2: include('phpclass/CLogin.php');
      3: #$tanggal = date('Y-m-d');
      4: $username = $_POST['u_name'];
      5: $password = md5($_POST['p_word']);
      6: $log = new CLogin();
      7: $cek = $log->getLogin($username, $password);
      8: if ($cek){
      9: ?>
      10: <script language="javascript">
      11: alert("Login Berhasil.");
      12: document.location.href="index.php";
      13: </script>
      14: <?php
      15: }else{
      16: ?>
      17: <script language="javascript">
      18: alert("Login gagal!");
      19: document.location.href="index.php"
      20: </script>
      21: <?php
      22: }
      23: ?>
Okey, sampai disini dulu, kita akan bahas selanjutnya di bagian 5 yaitu Membuat Halaman Adminisnistrator dan CRUD Menggunakan Konsep Pemrograman Berbasis Object (OOP) Bagian 5/6

UPDATE:
Lihat demo programnya: demo
Download full code nya: download code
Suni

Tawk.to