menu

Website sederhana untuk pemula menggunakan PHP - CRUD (delete)


Kembali lagi posting,,,

Melanjutkan tutorial yang sebelumnya tentang update(CRUD), kali ini saya akan membuat sistem yang terakhir dari CRUD yaitu delete.

Fungsi dari sistem ini adalah untuk menghapus field pada kolom tabel yang diinginkan.

Sama seperti update pada delete kita juga memerlukan id dari data yang ingin kita delete, id ini kita lempar dengan metode submit kemudia dijadikan sebagai condition saat akan menghapus field database.

Sebelum menerapkan tutorial ini pastikan anda sudah mengikuti tutorial sebelum-sebelumya hingga tuntas terlebih dahulu.

Oke langsung saja kita mulai tutorialnya.

Pertama, kita edit dulu file read pada path view/crud/read.php menjadi seperti ini
<!-- custom css -->
<link rel="stylesheet" href="styles/style.css">
<!--  -->
<!-- model -->
<?php include_once "model/Read.php" ?>
<!--  -->
<!-- content -->
<?php include_once "view/master/header.php" ?>
<div class="content">
  <div class="fill">
   <table border="1px";>
 <tr>
  <th>No</th>
  <th>Name</th>
  <th>Email</th>
  <th>Address</th>
  <th>Created At</th>
  <th>Updated At</th>
  <th>Action</th>
 </tr>
 <?php
  $sql="SELECT * FROM crud";
  $hsl=mysql_query($sql,$db);
  $no=0;
  while(list($name,$email,$address,$created_at,$updated_at,$id)=mysql_fetch_array($hsl)){
   $no++;
   ?>
     <tr>
      <td><?=$no?></td>
      <td><?=$name?></td>
      <td><?=$email?></td>
      <td><?=$address?></td>
      <td><?=$created_at?></td>
      <td><?=$updated_at?></td>
      <td>
       <a href="view/crud/update.php?user_id=<?=$id?>">Edit</a> ||
       <a href="view/crud/delete.php?user_id=<?=$id?>">Delete</a>
      </td>
     </tr>
      <?php
  }
 ?>
 </table>
 <br>
 <button class="button_def" onclick='window.location="view/crud/create.php"'>Create</button>
  </div>
</div>
<?php include_once "view/master/footer.php" ?>

Selanjutnya buat file baru delete.php pada path view/crud/delete.php sehingga strukturnya akan menjadi seperti ini


Isi file delete.php dengan code berikut
<!-- custom css -->
<link rel="stylesheet" href="../../styles/style.css">
<!--  -->
<!-- header -->
<?php include_once "../../_header.php" ?>
<?php include_once "../master/header.php" ?>
<!--  -->
<!-- content -->
<div class="content">
  <div class="fill">
   <?php include_once "../../model/Delete.php" ?>
   <form method="POST" action="">
  <table>
   <tr>
    <input type="hidden" name="id" id="id" value="<?=$id?>" required></td>
   </tr>
   <tr>
    <td>Name</td><td>:</td><td><input type="text" name="name" id="name" value="<?=$name?>" required></td>
   </tr>
   <tr>
    <td>Email</td><td>:</td><td><input type="text" name="email" id="email" value="<?=$email?>" required></td>
   </tr>
   <tr>
    <td>Address</td><td>:</td><td><textarea style="width:100%" type="text" name="address" id="address" value="<?=$address?>" required><?=$address?></textarea></td>
   </tr>
   <tr><td></td><td></td><td><input type="submit" value="Delete" name="dell" id="dell"></td></tr>
  </table>
 </form>
  </div>
</div>
<!--  -->
<!-- footer -->
<?php include_once "../master/footer.php" ?>
<?php include_once "../../_footer.php" ?>
<!--  -->

Edit model Update.php pada path model/Update.php menjadi seperti ini
<?php
    $user_id  = $_GET["user_id"];
    $_id   = $_POST["id"];
    $_simpan  = $_POST["simpan"];
    $_name   = $_POST["name"];
    $_email   = $_POST["email"];
    $_address = $_POST["address"];

 if ($_simpan) {
  if ($_id) {
   $sql="UPDATE crud SET
   name = '$_name',
   email = '$_email',
   address = '$_address',
   updated_at = NOW()
         WHERE id = '$_id'";
      mysql_query($sql,$db);
  }
     header("Location: http://localhost/blog/webcoboy/");
  die();
 }

 $sql="SELECT * FROM crud WHERE id='$user_id'";
 $hsl=mysql_query($sql,$db);
 list($name,$email,$address,$created_at,$updated_at,$id)=mysql_fetch_array($hsl);
?>
pada code tersebut kita menambahkan code header(Location) ini digunakan untuk redirect kehalaman home setelah update data.

Edit pula  model Read.php menjadi seperti ini
<?php
 $sql="SELECT * FROM crud";
 $hsl=mysql_query($sql,$db);
 $no=0;
?>
Terlihat code lebih sedikit karena saya pindahkan code ke file read.php pada path view/crud/read.php

Kemudian kita buat model baru yaitu Delete.php pada path model/Delete.php sehingga strukturnya akan menjadi seperti ini


Isi file Delete.php dengan code berikut
<?php
    $user_id  = $_GET["user_id"];
    $_id   = $_POST["id"];
    $_delete  = $_POST["dell"];
    $_name   = $_POST["name"];
    $_email   = $_POST["email"];
    $_address = $_POST["address"];

 if ($_delete) {
  if ($_id) {
   $sql="DELETE FROM crud WHERE id = '$_id'";
      mysql_query($sql,$db);
  }
     header("Location: http://localhost/blog/webcoboy/");
  die();
 }

 $sql="SELECT * FROM crud WHERE id='$user_id'";
 $hsl=mysql_query($sql,$db);
 list($name,$email,$address,$created_at,$updated_at,$id)=mysql_fetch_array($hsl);
?>

Tampilan dari Delete akan terlihat seperti ini


===DONE!!!===

Website sederhana untuk pemula menggunakan PHP - CRUD (update)


Setelah pada tutorial sebelumnya kita sudah membuat sebuah sistem create pada database, pada tutorial kali ini kita akan membuat sebuah sistem update pada database.

Sistem ini berguna untuk mengubah data pada database kita jika pada pemasukkan database pertama terjadi kesalahan entry data.

Untuk dapat menerapkan tutorial ini diwajibkan untuk menerapkan tutorial sebelumnya terlebih dahulu sampai sukses.

Pastikan koneksi database sudah benar jika belum silahkan lihat kembali tutorial sebelumnya disini

Oke langsung saja kita mulai tutorialnya.

Pertama kita edit terlebih dahulu file model/Read.php menjadi seperti ini.
<table border="1px";>
 <tr>
  <th>No</th>
  <th>Name</th>
  <th>Email</th>
  <th>Address</th>
  <th>Created At</th>
  <th>Updated At</th>
  <th>Action</th>
 </tr>
<?php
 $sql="SELECT * FROM crud";
 $hsl=mysql_query($sql,$db);
 $no=0;
 while(list($name,$email,$address,$created_at,$updated_at,$id)=mysql_fetch_array($hsl)){
  $no++;
  ?>
    <tr>
     <td><?=$no?></td>
     <td><?=$name?></td>
     <td><?=$email?></td>
     <td><?=$address?></td>
     <td><?=$created_at?></td>
     <td><?=$updated_at?></td>
     <td><a href="view/crud/update.php?user_id=<?=$id?>">Edit</a></td>
    </tr>
     <?php
 }
?>
</table>
<br>
<button class="button_def" onclick='window.location="view/crud/create.php"'>Create</button>

Selanjutnya buat file baru dengan nama update.php pada path view/crud/update.php

Isi dengan Code berikut.
<!-- custom css -->
<link rel="stylesheet" href="../../styles/style.css">
<!--  -->
<!-- header -->
<?php include_once "../../_header.php" ?>
<?php include_once "../master/header.php" ?>
<!--  -->
<!-- content -->
<div class="content">
  <div class="fill">
   <?php include_once "../../model/Update.php" ?>
   <form method="POST" action="">
  <table>
   <tr>
    <input type="hidden" name="id" id="id" value="<?=$id?>" required></td>
   </tr>
   <tr>
    <td>Name</td><td>:</td><td><input type="text" name="name" id="name" value="<?=$name?>" required></td>
   </tr>
   <tr>
    <td>Email</td><td>:</td><td><input type="text" name="email" id="email" value="<?=$email?>" required></td>
   </tr>
   <tr>
    <td>Address</td><td>:</td><td><textarea style="width:100%" type="text" name="address" id="address" value="<?=$address?>" required><?=$address?></textarea></td>
   </tr>
   <tr><td></td><td></td><td><input type="submit" value="Save" name="simpan" id="simpan"></td></tr>
  </table>
 </form>
  </div>
</div>
<!--  -->
<!-- footer -->
<?php include_once "../master/footer.php" ?>
<?php include_once "../../_footer.php" ?>
<!--  -->

Kemudian buat juga file model baru dengan nama Update.php pada path model/Update.php


Isi dengan Code berikut.
<?php
 $user_id  = $_GET["user_id"];
 $_id   = $_POST["id"];
 $_simpan  = $_POST["simpan"];
 $_name   = $_POST["name"];
 $_email   = $_POST["email"];
 $_address = $_POST["address"];

 if ($_simpan) {
  $sql="UPDATE crud SET
  name = '$_name',
  email = '$_email',
  address = '$_address',
  updated_at = NOW()
  WHERE id = '$_id'";
  mysql_query($sql,$db);
 }

 $sql="SELECT * FROM crud WHERE id='$user_id'";
 $hsl=mysql_query($sql,$db);
 list($name,$email,$address,$created_at,$updated_at,$id)=mysql_fetch_array($hsl);
?>

Sehingga hasilnya akan tampak seperti ini.


===DONE!===

Website sederhana untuk pemula menggunakan PHP - CRUD (create)


Setelah sibuk merombak total tampilan website sekarang saatnya kembali coding..

Kali ini saya akan melanjutkan tutorial sebelumnya tentang membuat website sederhana untuk pemula dengan menggunakan php - CRUD (read).

Pada tutorial kemarin kita sudah membuat sebuah sistem read database sekarang saatnya kita membuat sistem create pada database.

Sistem create ini bertujuan untuk menambah isi database dengan data yang baru.

Sebelum melanjutkan tuturial ini pastikan koneksi database sudah benar jika belum silahkan koneksikan dulu lihat disini.

Oke langsung saja berikut tutorialnya.

Pertama kita ubah dulu sedikit struktur folder kita,
Buat folder baru pada path view dengan nama crud dan pindah kan file crud.php kedalam folder crud tersebut. Selanjutnya ubah nama file crud.php menjadi read.php, dan ubah nama model/read.php menjadi Read.php sehingga struktur folder akan tampak seperti ini.


Kemudian edit isi file index.php menjadi seperti ini.
<?php include_once "_header.php" ?>
<?php include_once "view/crud/read.php" ?>
<?php include_once "_footer.php" ?>

Edit isi file view/crud/read.php menjadi seperti ini.
<!-- custom css -->
<link rel="stylesheet" href="styles/style.css">
<!--  -->
<?php include_once "view/master/header.php" ?>
<div class="content">
  <div class="fill">
   <?php include_once "model/Read.php" ?>
  </div>
</div>
<?php include_once "view/master/footer.php" ?>

Edit juga isi file _header.php menjadi seperti ini
<?php include_once "koneksi.php" ?>
<!DOCTYPE html>
<html>
  <head>
    <title>Webcoboy</title>
  </head>
  <body>

Dan edit pula isi file model/Read.php menjadi seperti ini.
<table border="1px";>
 <tr>
  <th>No</th>
  <th>Name</th>
  <th>Email</th>
  <th>Address</th>
  <th>Created At</th>
  <th>Updated At</th>
 </tr>
<?php
 $sql="SELECT * FROM crud";
 $hsl=mysql_query($sql,$db);
 $no=0;
 while(list($name,$email,$address,$created_at,$updated_at,$id)=mysql_fetch_array($hsl)){
  $no++;
  ?>
    <tr>
     <td><?=$no?></td>
     <td><?=$name?></td>
     <td><?=$email?></td>
     <td><?=$address?></td>
     <td><?=$created_at?></td>
     <td><?=$updated_at?></td>
    </tr>
     <?php
 }
?>
</table>
<br>
<button class="button_def" onclick='window.location="view/crud/create.php"'>Create</button>

Setelah itu kita buat file baru dengan nama create.php dan letakkan pada path view/crud/create.php, isi dengan code berikut.
<!-- custom css -->
<link rel="stylesheet" href="../../styles/style.css">
<!--  -->
<!-- header -->
<?php include_once "../../_header.php" ?>
<?php include_once "../master/header.php" ?>
<!--  -->
<!-- content -->
<div class="content">
  <div class="fill">
   <?php include_once "../../model/Create.php" ?>
   <form method="POST" action="">
  <table>
   <tr>
    <td>Name</td><td>:</td><td><input type="text" name="name" id="name" required></td>
   </tr>
   <tr>
    <td>Email</td><td>:</td><td><input type="text" name="email" id="email" required></td>
   </tr>
   <tr>
    <td>Address</td><td>:</td><td><textarea style="width:100%" type="text" name="address" id="address" required></textarea></td>
   </tr>
   <tr><td></td><td></td><td><input type="submit" value="Add" name="simpan" id="simpan"></td></tr>
  </table>
 </form>
  </div>
</div>
<!--  -->
<!-- footer -->
<?php include_once "../master/footer.php" ?>
<?php include_once "../../_footer.php" ?>
<!--  -->

Setelah selesai, kemudian buat file baru dengan nama create.php dan letakkan pada path model/Create.php sebagai model dari create.
Isi dengan code berikut.
<?php
 $_simpan  = $_POST["simpan"];
 $_name   = $_POST["name"];
 $_email   = $_POST["email"];
 $_address = $_POST["address"];
 if ($_simpan) {
  $sql="INSERT INTO crud (name,email,address,created_at,updated_at) VALUES ";
        $sql.="('$_name','$_email','$_address',NOW(),NOW())";
     mysql_query($sql,$db);
 }
?>

Sehingga hasilnya akan menjadi seperti ini.


===DONE!===

Laravel - Membuat menu dropdown dengan script


Sibuk dengan kerjaan dikantor, akhirnya bisa kembali menulis blog,,

Kali ini saya akan membagikan trick membuat sebuah menu dropdown dengan javasqript,,

Tulisan ini merupakan lanjutan dari tulisan yang sebelumnya. sebelum melakukan trick ini saya harap struktur file kita sama jika belum maka anda harus menerapkan tutorial sebelumnya sampai tuntas terlebih dahulu.

Sangat dianjurkan mengikuti tutorial pada blog ini secara berurutan!

Oke langsung saja saya bagikan langkah-langkah dan scriptnya, monggooo...

Pertama, edit code header.php pada path views/layouts/web/header.blade.php menjadi seperti ini
<div class="header">
 <div class="banner">
  <div class="welcome">Welcome</div>
  <div class="gambar"><a href="#"><img src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgWOzEVZ-vSf8RORS5_ZF7e0ltWpkD7gFpz-rqKoBgvvfJkgG9iXS5RxO3iU-MF2TvMqhkj7tIalKW48dq7bJv1Rjk-CKPsKLG6lZGuqVAd_IbNHzZYbWDuyvy2Rji4g1VTQsejHbKskbI/s80/mata.png" style="width:"100px" height="129px";"></a></div>
 </div>
 <hr>
 <div class="menu">
  <div class="kiri">
   <li>
    <div class="dropdown">
      <button class="button">Menu(css)</button>
      <div class="dropdown-content">
        <a href="{{ URL::to('users')}}">User</a>
        <a href="#">Link 2</a>
        <a href="#">Link 3</a>
      </div>
    </div>
   </li>
   <li>
     <div class="dropdown-script">
      <button onclick="myFunction()" class="dropbtn">Menu(css)</button>
      <div id="myDropdown" class="dropdown-content-script">
        <a href="{{ URL::to('users')}}">User</a>
        <a href="#">Link 2</a>
        <a href="#">Link 3</a>
      </div>
     </div>
   </li>
  </div>
  <div class="kanan">
   <li onclick="location.href='{{ URL::to('/') }}';">Login</li>
   <li onclick="location.href='{{ URL::to('/') }}';">Cari</li>
  </div>
 </div>
</div>

Selanjutnya edit file _header.scss menjadi seperti ini
.header{
 text-align: left;
 margin-top: 10px;
 width: 100%;
 height: 197px;
 background-color: white;
 box-shadow: 0 2px 4px 0 rgba(0,0,0,0.16),0 2px 10px 0 rgba(0,0,0,0.12);
 .banner{
  text-align: center;
  width: 100%;
  height: 129px;
  .welcome{
   padding-top: 60px;
   float: left;
   width: 40%;
   text-align: right;
  }
  .gambar{
   float: left;
   width: 20%;
  }
 }
}
.menu{
 width: 90%;
 margin-right: 5%;
 margin-left: 5%;
 .kiri{
  float: left;
  width: 50%;
  text-align: left;
  li{
   list-style: none;
   display: inline;
   margin-right: 5px;
   /*css for dropdown script*/
   .dropdown-script{
    position: relative;
    display: inline-block;
    a{
     &:hover{
      background-color: #ededed;
      color: black;
      cursor: pointer;
     }
    }
   }
   .dropdown-content-script{
    display: none;
    position: absolute;
    background-color: #e5e5e5;
    min-width: 150px;
    overflow: auto;
    border-radius: 5px;
    box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
    a{
     color: black;
        padding: 12px 16px;
        text-decoration: none;
        display: block;
    }
   }
   .show{
    display: block;
   }
   /*end*/
  }
  .button {
      background-color: #e5e5e5;
      padding: 11px 20px;
   border-radius: 3px;
   box-shadow: 0 1px 1px 0 rgba(0,0,0,0.16),0 2px 10px 0 rgba(0,0,0,0.12);
      cursor: pointer;
      border: none;

  }
  .dropdown {
      position: relative;
      display: inline-block;
      &:hover .dropdown-content{
       display: block;
      }
      &:hover .button{
       color: lighten(black, 10%);
    text-decoration: none;
    background-color: #ededed;
      }
  }
  .dropdown-content {
   border-radius: 3px;
      display: none;
      position: absolute;
      background-color: #f9f9f9;
      min-width: 160px;
      box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
      a{
       color: black;
       padding: 10px 20px;
       text-decoration: none;
       display: block;
       &:hover{
        background-color: #e5e5e5;
       }
      }
  }
 }
 .kanan{
  float: right;
  width: 50%;
  text-align: right;
  li{
   display: inline-block;
   background-color: #e5e5e5;
   margin-right: 5px;
   display: inline-block;
   cursor: pointer;
   padding: 10px 20px;
   border-radius: 3px;
   box-shadow: 0 1px 1px 0 rgba(0,0,0,0.16),0 2px 10px 0 rgba(0,0,0,0.12);
   &:hover {
    color: lighten(black, 10%);
    text-decoration: none;
    background-color: #ededed;
   }
  }
 }
}
pada code tersebut saya menambahkan beberapa code yang sudah saya mark dengan comen /*css for dropdown script*/ silahkan pelajari sendiri bedanya dengan menu dropdown yang menggunakan css biasa. Jangan lupa untuk menjalankan sassnya jika lupa cara menjalankannya silahkan lihat disini.

Kemudian tambahkan folder dan file baru bernama dropdown-menu.js sehingga strukturnya akan tampak seperti ini


Isi dropdown-menu.js dengan code berikut
//munculkan dan tutup dropdown saat button di klik
function myFunction() {
    document.getElementById("myDropdown").classList.toggle("show");
}

// tutup dropdown saat klik diluar button
window.onclick = function(event) {
  if (!event.target.matches('button')) {

    var dropdowns = document.getElementsByClassName("dropdown-content-script");
    var i;
    for (i = 0; i < dropdowns.length; i++) {
      var openDropdown = dropdowns[i];
      if (openDropdown.classList.contains('show')) {
        openDropdown.classList.remove('show');
      }
    }
  }
}

Edit file master.blade.php pada path views/layouts/web/master.blade.php menjadi seperti ini
<!doctype html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <title>{{ $title }}</title>
 {{ HTML::style('public/css/master/main.css') }}
</head>
<body>
 <!-- Custom Scripts -->
 @section('script')
 @show
 
 @include('layouts.web.header')
 @yield('content')
 @include('layouts.web.footer')
</body>
</html>

Edit pula file hello.blade.php pada path views/web/hello.blade.php menjadi seperti ini
@extends('layouts/web/master')
@section('script')
 {{ HTML::script('public/js/dropdown-menu.js') }}
@stop
@section('content')
 <?php $title = "Welcome" ?>
@stop

Sehingga tampilannya akan tampak seperti ini



===DONE!===

Website sederhana untuk pemula menggunakan PHP - CRUD (read)


Artikel kali ini akan membahas tentang membuat sebuah sistem read database pada php non framework.

Pada posting sebelumnya sudah saya posting sebuah artikel tentang sistem CRUD dengan menggunakan framework laravel, lihat disini.

Oke, sebelum masuk ketutorialnya saya asumsikan kamu sudah mengikuti posting sebelumnya karena pada artikel ini dan selanjutnya saya akan menggunakan custom framework.

Jika belum silahkan kamu terapkan dulu artikel tersebut.

Langsung saja kita mulai tutorialnya,

Pertama-tama edit file crud.php pada path webcoboy/view/crud.php menjadi seperti ini.
<?php include_once "view/master/header.php" ?>
<div class="content">
  <div class="fill">
   <?php include_once "model/read.php" ?>
  </div>
</div>
<?php include_once "view/master/footer.php" ?>

Selanjutnya buat file read.php pada path webcoboy/model/read.php


Isi read.php dengan code berikut.
<table border="1px";>
 <tr>
  <th>No</th>
  <th>Name</th>
  <th>Email</th>
  <th>Address</th>
  <th>Created At</th>
  <th>Updated At</th>
 </tr>
<?php
 $sql="SELECT * FROM crud";
 $hsl=mysql_query($sql,$db);
 $no=0;
 while(list($name,$email,$address,$created_at,$updated_at,$id)=mysql_fetch_array($hsl)){
  $no++;
  ?>
    <tr>
     <td><?=$no?></td>
     <td><?=$name?></td>
     <td><?=$email?></td>
     <td><?=$address?></td>
     <td><?=$created_at?></td>
     <td><?=$updated_at?></td>
    </tr>
     <?php
 }
?>
</table>
<br>
<button class="button_def" >Create</button>

Sehingga hasilya akan menjadi seperti ini.



===DONE!===

Website sederhana untuk pemula menggunakan PHP - Membuat koneksi database


Agar sebuah website dapat terhubung dengan database maka kita harus membuat koneksinya terlebih dahulu.

Koneksi database yang akan saya jelaskan pada posting kali ini adalah membuat koneksi database php tanpa menggunakan framework.

Ingin tahu koneksi database php dengan menggunakan framework Laravel? bisa lihat disini.

Koneksi database ini sangatlah penting sebelum kita akan memulai membuat sebuah sistem pada php yang menggunakan database.

Sebelum memulai tutorial ini kamu harus mengikuti tutorial sebelumnya, karena struktur project website yang saya gunakan pada tutorial kali ini menggunakn custom framework dapat dilihat disini.

Oke langsung saja, berikut tutorialnya..

Pertama-tama buat file baru bernama koneksi.php pada folder webcoboy sehingga akan tampak seperti ini.


Jika kamu mau menggunakan user dan password yang sudah ada pada phpmyadmin silahkan tinggal sesuaikan saja parameter dari isi file koneksi.php nya nanti.

Buat database baru dengan cara:
Klik New

Isi nama databasenya


Kemudian klik Create

Untuk melihat user yang sudah ada, klik Users


Jika ingin membuat user baru silahkan klik databasenya kemudian pada menubar klik privileges/hak akses, selanjutnya ikuti panduan berikut, lihat nomor 8.

Isikan code berikut pada koneksi.php.
<?php
  $host="localhost";
  $user="webcoboy";
  $pass="webcoboy";
  $dbname="webcoboy";

  $db=mysql_connect($host,$user,$pass);
  mysql_select_db($dbname,$db);
?>
$user merupakan nama user
$pass merupakan password user
$dbname merupakan nama databasenya

Kemudian ubah sedikit code pada file _header.php menjadi seperti ini.
<?php include_once "koneksi.php" ?>
<!DOCTYPE html>
<html>
  <head>
    <title>Webcoboy</title>
    <link rel="stylesheet" href="styles/style.css">
  </head>
  <body>

Untuk mengetes apakah database sudah terkoneksi atau belum silahkan lanjutkan pada tutorial berikutnya Read(CRUD).

===DONE!===

Website sederhana untuk pemula menggunakan PHP - Membuat custom framework


Sebelum mulai menerapkan tutorial ini, saya asumsikan kamu sudah belajar posting saya sebelumnya dan sudah menerapkannya. karena struktur sistem pada posting tersebut akan kita edit sedikit dan akan kita jadikan base tamplate/framework website kita.

Oke langsung saja berikut tutorialnya,

Pertama kita edit dulu templatenya yang kemaren karena sudah tidak layak pakai, hehe..

Template yang baru ini akan saya samakan sedikit dengan framework Laravel on PHP dan Ruby on Rails. Untuk Ruby on Rails belum pernah saya berikan tutorialnya karena masih banyak story tentang PHP dan Laravel yang harus saya selesaikan terlebih dahulu, jadi tunggu saja tutorial Ruby on Railsnya,.,.,

File style.css pada path webcoboy/styles ubah menjadi seperti ini
body {
  text-align: center;
  margin: 0px 0px 0px 0px;
}
/*-------------------default-------------------*/
.button_def {
  cursor: pointer;
  padding: 5px;
}

.button_def:hover{
  box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.5);
}

input[type=submit]{
  cursor: pointer;
  padding: 5px;
}

input[type=submit]:hover{
  box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.5);
}

.button2 {
  height: 40px;
  width: 240px;
  border-style: solid;
  font-size: 17px;
  display: inline-block;
    vertical-align: middle;
  border-radius: 25px;
  cursor: pointer;
}

/*-------------------header---------------------*/
.main_image {
  width: 100%;
  height: 40px;
  background-image: url(../images/main_image.jpg);
  background-size: cover;
  text-align: center;
}

.header_content {
  line-height: 40px;
  width: 90%;
  display: inline-block;
  text-align: left;
}

li {
  list-style: none;
  cursor: pointer;
}

li a{
  padding: 11px;
  color: white;
  text-decoration: none;
}

li a:hover{
  padding: 11px;
  background-color: white;
  color: black;
}

/*------------------isi--------------------*/
.content{
  width: 100%;
  text-align: center;
}

.fill{
  padding: 10px 10px;
  border-radius: 5px;
  margin-top: 20px;
  margin-bottom: 20px;
  display: inline-block;
  width: 80%;
  border: 1px solid grey;
  text-align: left;
  height: 521px;
}

/*--------------------footer---------------------*/
.footer{
  width: 100%;
  text-align: center;
  background-color: #888888;
}
.content_footer{
  padding: 10px;
  width: 90%;
  display: inline-block;
  text-align: left;
  height: 30px;
}

Ubah nama folder content menjadi view dan buat folder baru bernama master,
kemudian pindahkan file header.php kedalam folder master.
Selanjutnya buat file footer.php pada folder master dan buat file crud.php pada folder view sehingga akan tamapak seperti ini.


Isi file footer.php dengan code berikut
<div class="footer">
 <div class="content_footer">
  Copyright: codedoct.com
 </div>
</div>

Ganti isi file header.php dengan code berikut
<div class="main_image">
 <div class="header_content">
  <li><a href="#">Home</a></li>
 </div>
</div>

Isi file crud.php dengan code berikut
<?php include_once "view/master/header.php" ?>
<div class="content">
  <div class="fill">
   
  </div>
</div>
<?php include_once "view/master/footer.php" ?>

Ubah isi file index.php menjadi seperti ini
<?php include_once "_header.php" ?>
<?php include_once "view/crud.php" ?>
<?php include_once "_footer.php" ?>

Selanjutnya tambahkan folder model pada project kita (webcoboy), sehingga struktur folder website akan tampak seperti ini.


Setelah semua selesai dilakukan sekarang coba buka browser dan buka project website kita, sehingga akan tampak seperti ini.


===DONE!===

Engine PHP - parse code html


Setelah menyelesaikan story CRUD pada laravel sekarang saatnya kembali ke codingan coboy php hehe,,

Kali ini saya akan mengepost sebuah engine yang sering digunakan oleh para blogger untuk mengparse sebuah code html.

Karena engine ini sangat dibutuhkan akhirnya sayapun mencoba untuk membuat sendiri codingannya dan hasilnya seperti ini,,

Bagi yang menginginkan codingan enginenya silahkan copy-paste saja tapi tolong beritahu saya dengan mengisi kolom comment, jika ingin mengepostnya pada blog atau website pribadi tolong cantumkan juga sumbernya terima kasih.

Oke langsung saja berikut codenya,

<?php
 $encode = $_POST["encode"];
 $search = array('&', '<', '>', '"', "'");
 $replace = array('&amp;', '&lt;', '&gt;', '&quot;', '&#039;');
 $target = str_replace( $search, $replace, $encode );
?>
<html>
<head>
 <title>parse</title>
</head>
<body>
 <form method="POST" target="">
 <table>
  <tr>
   <td style="width:500px"><textarea name="encode" id="encode" style="width:100%;height:200px;"><?= htmlspecialchars($target) ?></textarea></td>
  </tr>
  <tr>
   <td><input type="submit" value="Encode"></td>
  </tr>
 </table>
 </form>
</body>
</html>


Sehingga hasilnya akan tampak seperti ini,

code html
 setelah di encode


===DONE!!!===

Laravel - CRUD (delete) pada laravel 4.2


Postingan kali ini adalah chapter terakhir dari bab CRUD pada laravel,

Setelah pada postingan sebelumnya kita sudah membuat sebuah fungsi untuk mengupdate sebuah database, kali ini kita akan membuat sebuah fungsi untuk menghapus sebuah field pada database.

Untuk dapat menghapus sebuah field database maka kita membutuhkan sebuah parameter id dari field yang akan dihapus.

Dimana parameter id ini akan kita lempar pada routes.
Oke langsung saja ke tutorialnya..

Pertama buat routes baru pada path protected/app/routes.php dengan menambahkan code:
Route::get('delete/{id}', 'DeleteController@deleteUser');

Selanjutnya membuat cotroller untuk fungsi delete ini dengan nama DeleteController.php
<?php

class DeleteController extends BaseController 
{
 public function deleteUser($id)
 {
  $user = User::where('id', $id)->first();
  $user->delete();
  return Redirect::to('users');
 }
}

Terkahir menambah action delete pada views readUser.blade.php
@extends('layouts/web/master')
@section('content')
 <?php $title = "User" ?>
 <div class="isi">
   <table border="1">
     <tr>
        <th>ID</th>
        <th>NAME</th>
        <th>USERNAME</th>
        <th>EMAIL</th>
        <th>PASSWORD</th>
        <th>CREATED AT</th>
        <th>UPDATED AT</th>
        <th>ACTION</th>
     </tr>
     @foreach($data_user as $users)
       <tr>
          <td>{{ $users->id }}</td>
          <td>{{ $users->name }}</td>
          <td>{{ $users->username }}</td>
          <td>{{ $users->email }}</td>
          <td>{{ $users->password }}</td>
          <td>{{ $users->created_at }}</td>
          <td>{{ $users->updated_at }}</td>
          <td>
           <a href="{{ URL::to('update/'.$users->id) }}">Edit<br>
           <a href="{{ URL::to('delete/'.$users->id) }}">Delete
          </td>
       </tr>
     @endforeach
   </table>
   <br>
   <button onclick="location.href='{{ URL::to('create') }}';">Create</button>
 </div>
@stop

Sehingga tampilan akhir akan menjadi seperti ini:



===DONE!===

Laravel - CRUD (update) pada laravel 4.2


Posting kali ini melanjutkan posting sebelumnya tentang create pada laravel,

Untuk melengkapi sebuah sistem CRUD maka sudah seharusnya sistem tersebut memiliki fungsi yang dapat mengedit data yang ada pada database.

Yang diperlukan dalam fungsi edit adalah parameter id dari data tabel yang akan diedit, parameter id ini didapat dari sebuah parameter yang ada pada url yang sudah kita lempar sebelumnya.

Untuk melakukan tutorial ini diwajibkan melakukan tutorial sebelumnya, dapat dilihat disini..

Oke langsung saja berikut tutorialnya.,.,

Pertama buat route baru pada file routes,


Tambahkan code berikut pada file routes
Route::get('update/{id}', 'UpdateController@updateUser');
Route::post('update/{id}', 'UpdateController@updatepostUser');
Selanjutnya buat controller baru dengan nama UpdateController seperti ini

Isi dengan Code berikut
<?php

class UpdateController extends BaseController
{
 public function updateUser($id)
 {
  $users = User::where('id', $id)->first();
  //dd($users);
  return View::make('web.updateUser')->with('data_user', $users);
 }

 public function updatepostUser($id)
 {
  //var_dump($_POST);
  $validator = Validator::make(
   Input::all(),
   array(
    "name"     => "required",
    "username"    => "required",
    "email"     => "required|email",
   )
  );
  if ($validator->passes()) {
      $user = User::find($id);
      $user->name     = Input::get('name');
      $user->username = Input::get('username');
      $user->email    = Input::get('email');
      $user->save();

      return Redirect::to('users');
   }
   else {
      return Redirect::to('update/'.$id)
       ->withErrors($validator)
       ->withInput();
   }
 }
}
dd($users); digunakan untuk mengecek apakah query dari $users benar atau tidak.
Query where('id', $id)->first(); digunakan untuk mencari data tabel dengan id=$id, dimana $id merupakan url yang kita lempar pada routes: 'update/{id} sehingga pada url akan tampak seperti ini



Kemudian buat file View baru pada path views/web/updateUser seperti ini


Isi dengan Code berikut
@extends('layouts/web/master')
@section('content')
 <?php $title = "Update User" ?>
 <div class="isi">
  <form method="post" action="">
  <table>
   <tr>
    <td>Name</td>
    <td nowrap>:</td>
    <td><input type="text" name="name" value="{{ $data_user['name'] }}"><span style="color:red"><?php echo $errors->first('email') ?></td>
   </tr>
   <tr>
    <td>Username</td>
    <td nowrap>:</td>
    <td><input type="text" name="username" value="{{ $data_user['username'] }}"><span style="color:red"><?php echo $errors->first('email') ?></td>
   </tr>
   <tr>
    <td>Email</td>
    <td nowrap>:</td>
    <td><input type="text" name="email" value="{{ $data_user['email'] }}"><span style="color:red"><?php echo $errors->first('email') ?></span></td>
   </tr>
   <tr>
    <td colspan="3">
     <br>
     <input type="submit" class="btn" value="Submit">
    </td>
   </tr>
  </table>
  </form>
 </div>
@stop
Kita menambahkan sintax value="{{ $data_user['username'] }}" yang berfungsi untuk menampilkan data tabel username dengan id yang sudah ditetapkan pada controller sebelumnya yaitu: where('id', $id)->first().

Selanjutnya menambahkan tombol edit pada views/web/readUser.blade.php seperti ini
<table border="1">
     <tr>
        <th>ID</th>
        <th>NAME</th>
        <th>USERNAME</th>
        <th>EMAIL</th>
        <th>PASSWORD</th>
        <th>CREATED AT</th>
        <th>UPDATED AT</th>
        <th>ACTION</th>
     </tr>
     @foreach($data_user as $users)
       <tr>
          <td>{{ $users->id }}</td>
          <td>{{ $users->name }}</td>
          <td>{{ $users->username }}</td>
          <td>{{ $users->email }}</td>
          <td>{{ $users->password }}</td>
          <td>{{ $users->created_at }}</td>
          <td>{{ $users->updated_at }}</td>
          <td><a href="{{ URL::to('update/'.$users->id) }}">Edit</td>
       </tr>
     @endforeach
</table>
Sintax 'update/'.$users->id digunakan untuk melempar id data tabel yang akan diedit pada url.

Sehingga tampilan akhir akan seperti ini



===DONE!===