Cara mudah belajar pemrograman komputer

Tampilkan postingan dengan label php. Tampilkan semua postingan
Tampilkan postingan dengan label php. Tampilkan semua postingan

Selasa, 15 Desember 2015

Mengisi salah satu field di form secara otomatis


Kembali lagi di coretan-coretan kecil dari programmer goBlog. Tulisan kita kali ini akan membahas tentang bagaimana mengisi sebuah field tertentu pada form berdasarkan inputan pada fiel lain.
Tulisan ini dilatar belakangi pertanyaan salah seorang teman yang bertanya "Misalkan ada form data mahasiswa dengan field NPM dan nama, apakah bisa field nama terisi otomatis ketika kita mengisikan NPM pada field npm?"
Jawabanya tentu saja bisa.
Pada studi kasus yang akan kita bahas ini, kita akan menerapkanya pada form di sebuah website.
Kali ini kita akan memanfaatkan salah satu framework javascript yang cukup merakyat yaitu jQuery dan kemampuan ajax yang dimilikinya.
Kita buat dulu sebuah database dengan nama datamahasiswa, kemudian buat satu tabel dengan nama mahasiswa dengan dua field npm sebagai primary key dan nama.

--------------------------------------------------------

CREATE DATABASE datamahasiswa;
use datamahasiswa;
create table mahasiswa(
    npm int not null PRIMARY KEY,
    nama varchar(30) not null
    );
    
insert into mahasiswa(
    npm, nama) VALUES (10753001,'Nama Mahasiswa1');
insert into mahasiswa(
    npm, nama) VALUES (10753002,'Nama Mahasiswa2');
insert into mahasiswa(
    npm, nama) VALUES (10753003,'Nama Mahasiswa3');
insert into mahasiswa(
    npm, nama) VALUES (10753004,'Nama Mahasiswa4');

--------------------------------------------------------

Selanjutnya kita buat file form.html dan ajaxrespon.php
form.html ini kita gunakan untuk menampilkan form kita.sedangkan ajaxrespon.php akan kita gunakan untuk menangani ajaxrequest dari jQuery kita pada form yang kita buat.



isi dari form.html

<!DOCTYPE html>
<html>
<head>
 <title>BELAJAR AJAX</title>
 <script type="text/javascript" src="https://code.jquery.com/jquery-2.1.4.min.js"></script>   <!-- INCLUDE jQuery -->
</head>
<body>
<form action="#" method="post">
 <input type="text" name="npm" id="npm" placeholder="NPM">
 <input type="text" name="nama" id="nama" placeholder="Nama">
 <input type="submit" value="simpan">
</form>

<script type="text/javascript">
$(document).ready(function(){

 $('#npm').change(function(){    // KETIKA ISI DARI FIEL 'NPM' BERUBAH MAKA ......
  var npmfromfield = $('#npm').val();  // AMBIL isi dari fiel NPM masukkan variabel 'npmfromfield'
  $.ajax({        // Memulai ajax
    method: "POST",      
    url: "ajaxrespon.php",    // file PHP yang akan merespon ajax
    data: { npm: npmfromfield}   // data POST yang akan dikirim
  })
    .done(function( hasilajax ) {   // KETIKA PROSES Ajax Request Selesai
        $('#nama').val(hasilajax);  // Isikan hasil dari ajak ke field 'nama' 
    });
 })
});
</script>
</body>
</html>


isi script ajaxrespon.php

<?php
$koneksi = mysql_connect("localhost","root","");    // BUKA KONEKSI DENGAN DATABASE MYSQL
             // host : localhost - user : root - password : kosong

$db = mysql_select_db('datamahasiswa');    // TENTUKAN NAMA DATABASE

$npm = $_POST['npm'];        // Menerima NPM dari JQuery Ajax dari form

$s = mysql_query("select * from mahasiswa where npm='$npm'"); // Ambil nama mahasiswa berdasarkan npm yang dikirim dari jquery ajax
while ($data = mysql_fetch_array($s)) {       
 echo $data[1];            // Print nama hasil perolehan dari query database
}
?>

Demikian coretan kecil dari programmer goBlog kali ini apabila ada pertanyaan jangan ragu untuk meninggalkan jejak di kolom komentar.
Semoga bermanfaat.

Jumat, 14 Agustus 2015

Menampilkan tanggal dari tanggal awal ditambah hari

Halo sobat programmer goBlog, sudah lama tidak ada kabar berita dari si goBlog ini.
Kali ini programmer goBlog kembali dengan sedikit tutorial tentang pemrograman PHP.
Tutorial ini muncul ketika saya terfikir untuk menampilkan tanggal tertentu dari tanggal awal ditambah beberapa hari.
Maksudnya seperti ini, misal kita ingin menampilkan tanggal 10 hari setelah tanggal 12-januari-2015.
Jadi apabila tanggal awal adalah 12-januari-2015 dan tanggal setelah 10 hari adalah 22-januari-2015.

gampang, tinggal tambahin aja jumlah tanggalnya. eits, gak semudah itu. kenapa? andaikan tanggal awal adalah 23-januari-2015 maka 10 hari setelahnya adalah 34-januari-2015. duh ada tah..
ah bisa diakali, kalau hasil penjumlahan lebih dari 31 maka tanggalnya jadi hasil-31 = 3 dan bullan nya diganti jadi januari.

Macam gambar dibawah ini?

Bisa sih, tapi maih kurang...
kenapa????
iya kalau hasilnya cuma 34, lah kalau hasilnya jadi 70??
misal 70 hari setelah tanggal 22 januari 2015 adalah ==?????
ah tambah aja if else nya..
bisa, tambah aja sampe semua kemungkinan skenario habis. 90 hari 200 hari 5000 hari dst...

cara seperti diatas memang memungkinkan untuk diterapkan, tetapi sebetulnya ada cara yang lebih gampang.
Caranya adalah dengan menggunakan fungsi di php yaitu gregoriantojd();
fungsi ini mengubah format tanggal yang berupa tanggal bulan tahun menjadi jumlah hari saja.
kemudian kita tinggal menambahkan hasil dari fungsi tadi dengan jumlah hari tambahan yang kita perlukan tadi.
Selanjutnya kita ubah lagi format nya menjadi tanggal bulan dan tahun dengan menggunakan fungsi pembalik dari jd ke gregorian yaitu fungsi jdtogregorian();

seperti gambar dibawah ini.

Seperti itulah kira kira sedikit sharing pengetahuan yang bisa saya bagi..
mungkin ada yang sedang membutuhkan dan kebingungan.
Semoga bermanfaat, dan apabila ada yang ingin ditanyakan programmer goBlog dengan senang hati menjawab.

Sabtu, 14 Maret 2015

object oriented programming atau oop di php



Halo sobat programmer, pernah mendengar istilah OOP atau object oriented programming? Well kalau sudah pernah dengar kita lanjutkan.
Kebanyakan ketika kita mendengar OOP kita akan langsung teringat java atau C++ atau c#. kalau java sudah tidak asing lagi memang, karena mengusung konsep pemrograman berbasis objek atau oop. Nah kalau object oriented programming atau oop di php bagaimana? Bisakah?
Bisa, dan kali pada tulisan kali ini programmer goBlog bakal mengajak anda untuk berkenalan seperti apa bentuk dari oop di php.

Berbicara soal oop kita pasti tidak akan terlepas dari yang namanya class dan object, pada tulisan ini kita akan membahas tentang dua mahluk ini, tentang bagaimana penulisan class oop di php, bagaimana penulisan variable, bagaimana penulisan method (atau jika dalam php kita mengenalnya dengan function).
Pada tulisan ini kita akan membuat sebuah aplikasi bernama TestApp yang akan memiliki dua tiga class yaitu class utama, class manusia, dan class mahasiswa.

Nah langsung saja, kita buat file php dengan nama oop.php

Lalu kita akan deklarasikan nama applikasinya.


 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
<?php

$app = new TestApp;
$app->run();

class TestApp{
 function run(){
  $mahasiswaJono = new mahasiswa();
  $mahasiswaJono->setNama("jono");
  $mahasiswaJono->setUmur(30);
  $mahasiswaJono->setSemester(8);

  $mahasiswaJoni = new mahasiswa();
  $mahasiswaJoni->setNama("Joni");
  $mahasiswaJoni->setUmur(24);
  $mahasiswaJoni->setSemester(5);

  echo "Nama Mahasiswa: ".$mahasiswaJono->getNama()."<br>";
  echo "Umur: ".$mahasiswaJono->getUmur()."<br>";
  echo "Semester: ".$mahasiswaJono->getSemester()."<br>";
  echo "---------------------------------<br>";
  
  echo "Nama Mahasiswa: ".$mahasiswaJoni->getNama()."<br>";
  echo "Umur: ".$mahasiswaJoni->getUmur()."<br>";
  echo "Semester: ".$mahasiswaJoni->getSemester()."<br>";

 }
}

class manusia{
 var $nama;
 var $umur;

 function setNama($nama){
  $this->nama = $nama;
 }

 function getNama(){
  return $this->nama;
 }

 function setUmur($umur){
  $this->umur = $umur;
 }

 function getUmur(){
  return $this->umur;
 }
}


class mahasiswa extends manusia{
 var $semester;

 function setSemester($semester){
  $this->semester = $semester;
 }

 function getSemester(){
  return $this->semester;
 }
}
?>


Keseluruhan penjelasan dari contoh aplikasi diatas adalah seperti ini,
Dua baris pertama adalah untuk membuat suatu object dari class TestApp yang merupakan class utama kita, dan menamakanya object $app, pada baris dua kita memanggil method atau fungsi run() untuk dijalankan pertama kali.

Pada class TestApp berisi satu buah method yang bernama run().
Didalam method utama kita ini akan terjadi proses sebagai berikut.
1. Buat object baru bernama $mahasiswaJono yang merupakan instance dari class mahasiswa.
2. Set nama mahasiswa untuk object jono melalui method setNama();
3. Set umur mahasiswa untuk object jono melalui method setUmur();
4. Set semester mahasiswa untuk object jono melalui method setSemester();

Proses yang sama juga terjadi untuk object mahasiswa joni.

Pada class manusia berisi dua variable yaitu $nama yang dideklarasikan dengan var $nama dan variable $umur yang merupakan atribut atribut yang pasti ada pada manusia.
Class ini juga memiliki tingkah atau kelakuan melalui empat method masing masing untuk mengambil dan mengisi nilai untuk variable nama dan umur.

Sedangkan untuk class mahasiswa merupakan class turunan dari class manusia yang memiliki atribut semester serta method setSemester dan getSemester. Karena class mahasiswa merupakan turunan dari class manusia jadi secara otomtis class ini memiliki atribut serta method milik class orang tuanya yaitu class manusia.
Inilah kenapa kita dapat memberikan nilai nama, umur melalui object yang merupakan instance dari class mahasiswa --- $mahasiswaJono->setNama("jono");

Ya begitulah kira-kira gambaran umum tentang bagaimana bentuk dan konsep object oriented programming atau oop di php.

Jika sobat memiliki pertanyaan pertanyaan terkait oop di php jangan ragu untuk meninggalkan pertanyaan tersebut di kolom komentar dibawah ini, saya akan dengan senang hati untuk mencoba menjawab.

Kamis, 12 Maret 2015

Cara membuat sistem login sederhana dengan php

Halo sobat programmer, kembali dengan tulisan-tulisan dari programmer goblog.
Kali ini kita akan belajar cara membuat sistem login sederhana dengan PHP.
Dalam tulisan ini saya mengasumsikan bahwa anda sudah mengerti tentang konsep web server, memahami sedikit tentang html dan php.

Pada tulisan ini kita tidak akan berfokus pada bahasa pemrogramanya, kita akan lebih berfokus pada logika dan cara bekerja sistem ini.
Kita akan membuat empat file php diantaranya index.php yang akan menjadi halaman login utama, kemudian halaman home.php yang merupakan halaman yang hanya dapat diakses ketika user telah berhasil login, login-handler.php yang berfungsi untuk menangani proses login yang terjadi, dan halaman logout.php yang akan menangani proses logout.

Secara keseluruhan proses yang akan terjadi pada sistem login ini adalah sebagai berikut.

1. user mengakses index.php yang akan menampilkan form login
<html>

<head>

 <title></title>



 <style type="text/css">



   #form{ /* #form adalah selector id untuk <div id="form" */

       min-width:200px;  /* lebar minimal */

       max-width:200px; /* lebar maksimal */

       min-height:100px; /* tinggi minimal */

       background:blue; /* warna bg */

       padding:10px; /* jarak batas luar kedalam */

       margin:0 auto; /* jarak atas 0 samping kiri kanan otomatis (bikin ketengah) */

       margin-top:100px; /* kasih jarak keatas */

   }

   input{

       width:100%;

   }

   #btn-login{

       width:auto;

       margin-top:10px;

   }



 </style>







</head>

<body>



<div id="form">

   

    <form action="login-handler.php" method="post">

        <input type="text" name="username" placeholder="username"><br>

        <input type="password" placeholder="password" name="password"><br> 

        <input id="btn-login" type="submit" value="login">

    </form>

   





</body>

</html>



<!--

 keterangan alur

1. masuk ke halaman index.php

2. klik login masuk ke halaman login-handler.php melalui <form action="login-handler.php"

3. di halaman login handler, cek login berhasil atau tidak

------------------------------ -> penjelasan selanjutn ya di halaman login-handler.php

-->


2. user menginput username beserta password pada halaman tersebut

3. sistem akan mengecek apakah username dan password sesuai, jika ya sistem akan menampilkan pesan berhasil beserta link untuk menuju halaman utama.php serta menyimpan data login pada session, jika tidak sistem akan menampilkan pesan error beserta link untuk kembali ke halaman login.

<?php

session_start(); //start session php



 $username=$_POST['username'];  // ambil kiriman dari form login (index.php) dan masukkan ke variable $username



 $password =  $_POST['password']; // ambil kiriman dari -----------sda----------------------- variable $password



  /* ------------------------------------------------------



  Berikut adalah baris kode yang digunakan untuk berinteraksi dengan database.



  --------------------------------------------------------- */

  $dbhost = 'localhost'; //alamat host mysql database

  $dbusername = 'root'; //username untuk mysql database

  $dbpassword = ''; //password untuk mysql database

  $dbdatabasename = 'login'; //nama database yang akan digunakan



  $connection = mysql_connect($dbhost,$dbusername,$dbpassword);

  if(!$connection) {  //periksa apakah koneksi berhasil, jika gagal tampilkan pesan error dan terminate program

   die("koneksi database gagal, periksa setting dan atau mysql server anda");

  }else{//jika koneksi berhasil maka lanjutkan untuk memilih database

   $db = mysql_select_db($dbdatabasename);

   if(!$db){

    die("Database dengan nama $dbdatabasename tidak ditemukan");

   }else{ //jika database ada dan terhubung dengan sukses, lanjutkan ke tahap pemeriksaan username dan password di database.

    $query = mysql_query("select * from user where username='$username' and password='$password' ");

    $jumlahUserDenganUsernameDitemukan=mysql_num_rows($query);

     if($jumlahUserDenganUsernameDitemukan>0){  // username hasil ambil dari database lebih dari 0 artinya login berhasil.

       $_SESSION['username'] = $username; // daftarkan session usrename

      echo "Login berhasil ";            // cetak tulisan login berhasil ke layar

      echo '<a href="home.php">Klik disini untuk menuju halaman utama</a>'; //cetak link untuk menuju halaman utama (home.php)

     }else{  // kalau login gagal

      echo "username atau password salah";    // cetak text ke layar

      echo '<a href="index.php">Login disini</a>';  // cetak link ke index.php agar user login terlebih darhulu.

       

    }

    

   }

  }





 

?>


4. pada halaman home.php proses yang terjadi pertama kali adalah memeriksa apakah user telah login dengan benar atau belum melalui data yang tersimpan di session, jika ya maka halaman utama.php akan tampil, jika tidak maka sistem akan menampilkan pesan yang meminta user untuk login terlebih dahulu serta menampilkan link untuk menuju halaman login.
<?php

session_start(); // daftarkan session di browser



if(isset($_SESSION['username'])){   //cek apakah ada session username  

 echo "Selamat datang ".$_SESSION['username']; // kalau session ada berarti telah login

 echo "<br>"; 

 echo '<a href="logout.php"> Logout</a>';   // cetak link untuk logut (mengarah ke logout.php)

}else{  // kalau tidak ada berarti belum login

 echo "anda harus login  untuk melihat halaman ini "; // beritahu user agar login

 echo '<a href="index.php">Login disini</a>';  //  cetak link ke halaman login (index.php) agar user login terlebih dahulu

}



?>


5. pada saat user melakukan proses logout maka sistem akan menghapus semua data yang ada di session.

<?php
session_start();  

session_destroy();   // destroy session . hapus session username yang telah di register pada saat login berhasil

echo "adnda telah logout dari applikasi";  //  notifi user bahwa telah keluar (logout)
echo "<br>";
echo '<a href="index.php">Klik disini untuk kemabali ke halaman login</a>'; // cetak link untuk user kembali ke halaman logina
?>


Jangan lupa untuk membuat database dengan nama login dengan field "username" dan "password".

Popular Posts

Recent Posts

Unordered List

Pages

Kunjungan

Diberdayakan oleh Blogger.