Wednesday, January 15, 2020

Guru Design

CRUD Insert Data PDO OOP

Kali ini guru design akan berbagi tutorial CRUD Insert data berbasis object oriented,. Ok lanjut ke Kang Yusuf tutorialnya:

Buat database dengan nama db_latihanobjek dan tabel dengan nama artikel

CREATE TABLE `artikel` (
    `id_artikel` int(5) NOT NULL AUTO_INCREMENT,
    `kategori` varchar(20) NOT NULL,
    `judul` varchar(20) NOT NULL,
    `isi` text NOT NULL;

Buat dua folder dengan nama view dan modal

Pada folder view buatlah file artikel.php

artikel.php
<?php
    error_reporting('~$_NOTICE');
    include "../model/class-insert.php";  
    $auth_artikel = new Insertdata();

    //Untuk melakukan eksekusi insert data
    if (isset($_POST['kirim'])) {
        $kategori   = ($_POST['kategori']);
        $judul  = ($_POST['judul']);
        $isi  = ($_POST['isi']);
        if ($kategori == "") {
            $error[]    = "kategori kosong!";
        }
         elseif ($judul == "") {
            $error[]    = "judul kosong!";
        }
         elseif ($isi == "") {
            $error[]    = "isi kosong!";
        }
            try {
                if ($auth_artikel->insertartikel($kategori, $judul, $isi)) {
                    $auth_artikel->redirect('artikel.php');
                }
            } catch (PDOException $e) {
                echo $e->getMessage();
            }
    }
 ?>
<!DOCTYPE html>
<html>
<head>
  <title>CRUD Insert PDO OOP</title>
</head>
<body>
  <form method="post">
    <select name="kategori" required="">
      <option value="">Pilih Kategori</option>
      <option value="pendidikan">Pendidikan</option>
      <option value="pertanian">Pertanian</option>
      <option value="perdagangan">Perdagangan</option>
    </select>
    <br>
    <input type="text" name="judul" placeholder="judul" required="">
    <br>
    <textarea type="text" name="isi" placeholder="isi"></textarea>
    <button type="submit" name="kirim" title="Posting" >Posting</button>
  </form>
</body>
</html> 

Pada folder modal buatlah file koneksi.php dan class-insert.php

koneksi.php
<?php
    /**
     * Database
     */
    class Database
    {
        private $hostname   = "localhost";
        private $db_name    = "db_latihanobjek";
        private $username   = "root";
        private $password   = "";
        public $conn;
        public function dbConnection()
        {
            $this->conn = null;
            try {
                $this->conn =new PDO("mysql:host=" . $this->hostname . ";dbname=" . $this->db_name, $this->username, $this->password);
                $this->conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
            } catch (PDOException $e) {
                echo "Connection error: " . $e->getMessage();
            }
            return $this->conn;
        }
    }
?>

class-insert.php
<?php

    include "koneksi.php";
    /**
     * Insertdata Class
     */
    class Insertdata
    {
        private $conn;
        public function __construct()
        {
            $database   = new Database();
            $db         = $database->dbConnection();
            $this->conn = $db;
        }

        //star artikel-----------------------------------------------
        public function insertartikel($kategori, $judul, $isi)
        {
            try {
                $stmt = $this->conn->prepare('INSERT INTO artikel (kategori, judul, isi VALUES (:1, :2, :3)');
                $stmt->bindParam(':1',$kategori);
                $stmt->bindParam(':2',$judul);
                $stmt->bindParam(':3',$isi);
                $stmt->execute();
                return $stmt;
            } catch (PDOException $e) {
                echo $e->getMessage();
            }
        }
        //end artikel-----------------------------------------------
        public function redirect($url, $statusCode = 303)
        {
            header('Location: ' . $url, true, $statusCode);
            die();
        }
    }
?>

Sekian Semoga bermanfaat.

 

Friday, January 10, 2020

Jangan Pernah Mencontek/meniru Hasil Desain milik Orang lain

Kenapa saya harus mengatakan hal tersebut, seperti kita ketahui, saat kita ingin membuat suatu proyek pekerjaan, dalam kasus kita adalah membuat sebuah Blog/Website, mencari inspirasi adalah hal yang sangat penting. Saat mencari inspirasi, tak bisa kita sangkal kita akan merujuk pada tampilan, bentuk, dan pengelolaan Blog-blog yang telah mempunyai nama baik di dunia maya, baik itu peringkat mereka, tampilan blog mereka, bahkan typograpi mereka.

Tapi perlu saya ingatkan, ada perbedaan tipis antara mencari Inspirasi dengan Plagiat, seperti kita ketahui, Plagiat adalah sesuatu yang amat sangat dibenci orang termasuk juga kita, hasil jerih payah yang telah kita lakukan, tiba-tiba digunakan oleh orang lain tanpa meminta persetujuan terlebih dahulu. Dalam kasus kita, saat kita mencari inspirasi, kita tidak akan serta merta meniru semua yang kita inspirasikan, kita hanya membantu imazinasi kita untuk berkembang dan memperoleh hasil sesuai yang kita butuhkan, selebihnya biar kemampuan dan kapabilitas kita yang bekerja.

Jagoan Design - Meskipun kita adalah seorang pemula, namun sebuah desain yang kita buat atas usaha sendiri, akan lebih bermakna ketimbang kita menggunakan desain orang lain, ini akan membantu kita tetap bersemangat untuk belajar, dan akan mendorong kita untuk terus membaca, agar kemampuan kita berkembang. Namun berbeda dengan memplagiat, meskipun kita telah merubah bentuk, warna, bahkan tingkah dari sebuah desain yang kita inspirasikan, tetap saja itu masuk dalam kriteria Plagiat yang harus kita hindari.

Kemampuan orang merancang ulang sebuah desain bisa dikategorikan adalah hal yang luar biasa, namun jangan salah, kemampuan ini akan menekan kemampuan kita untuk berkembang lebih maju, karena apapun yang kita lakukan untuk merancang ulang tersebut, kita akan kembali mengintip bagaimana cara kita untuk melakukannya, otomatis hal-hal yang kita lakukan tidak akan masuk secara mendalam di otak kita. Boleh saja kita mencari ilham ataupun inspirasi, tapi jangan pernah mem-Plagiatkannya untuk Blog kita, Jadi pilih mana, mem-Plagiat, atau mendisain sendiri?