Pages

Subscribe:

Labels

Minggu, 04 Desember 2011

Menyimpan Data & Menampilkan Beberapa Tabel


Tutorial PHP Menyimpan Data & Menampilkan Beberapa Tabel Sekaligus, akan menjelaskan cara Menyimpan data ke beberapa tabel dan menampilkan data dari beberapa tabel yang berelasi. Baik itu tabel dengan relasi one-to-one atau satu-ke-satu, one-to-many atau satu-ke-banyak dan many-to-many atau banyak-ke-banyak. Sebenarnya tidak ada trik atau cara khusus saat menyimpan data ke beberapa table, begitu pula dengan menampilkan data dari beberapa table. Selama memahami cara memproses HTML form yang benar dan memahami cara menyimpan & menampilkan data ke satu tabel.

Relasi Antar Tabel



Pada saat melakukan normalisasi terhadap sebuah data, maka data akan dipecah kedalam beberapa tabel yang berelasi satu sama lainnya. Ada 3 relasi antar table sebagai berikut.




One-to-one Satu-ke-satu



Relasi one-to-one merupakan relasi tabel yang jarang digunakan, relasi ini merelasikan satu data sebuah tabel dengan hanya satu data dari tabel lainnya. Indikasi untuk menggunakan tipe relasi ini adalah jika sebuah data memiliki sebuah subset data tertentu yang menerangkan lebih detil data itu, dimana subset data ini tidak dimiliki oleh data tersebut pada umumnya. Sebagai contoh, sebuah product secara umum memiliki id_produk, nama, harga, jenis. Namun pada tipe product tertentu seperti buku, memiliki data tambahan seperti penulis, penerbit, ISBN, tanggal_terbit. Satu data di tabel product hanya terhubung dengan satu data di tabel buku. Jika digambarkan seperti di bawah.





One-to-many Satu-ke-banyak



Relasi one-to-many adalah relasi antar dua tabel dimana satu data (record) dari Tabel 1 bisa terhubung dengan beberapa record di Tabel 2. Misalnya penjualan memiliki id_penjualan, tanggal_jual, kasir. Setiap penjualan bisa terhubung dengan banyak item_penjualan. item_penjualan memiliki id_item,id_penjualan, id_produk, jumlah, harga_jual. Jika digambarkan seperti:







Many-to-many Banyak-ke-Banyak



Relasi many-to-many merupakan relasi yang paling kompleks, karena diperlukan tabel lain untuk menghubungkan dua tabel data yang saling berkepentingan. Seperti halnya penjualan bisa terhubung (berkepentingan) dengan banyak product, dan product bisa terhubungan dengan banyak penjualan. Tabel penjualan dan product memiliki relasi banyak ke banyak yang dihubungkan oleh tabel item_penjualan. Contoh lain adalah dosen bisa memiliki banyak mahasiswa dan mahasiswa bisa memiliki banyak dosen. Relasi banyak ke banyak antara dosen dan mahasiswa memerlukan tabel lain, sebut saja tabel mahasiswa_dosen. Jika digambarkan seperti di bawah.



Menyimpan Data ke Beberapa Tabel



Seperti dijelaskan sebelumnya tidak ada cara khusus untuk menyimpan data ke beberapa tabel. Berikut adalah cara menyimpan data ke beberapa tabel berdasarkan tipe relasi tabel.

Menyimpan Data ke Tabel Berelasi Satu-ke-satu



Disini akan diambil contoh seperti contoh di atas, menyimpan produk dengan tipe buku. Pertama buat html form dengan kode di bawah.

<form name="form1" action="simpan.php" method="post">   <dl>    <dt>Nama</dt>    <dd><input type="text" name="nama"/></dd>    <dt>Harga</dt>    <dd><input type="text" name="harga"/></dd>    <dt>Jenis</dt>    <dd>     <select name="jenis">      <option value="BUKU">Buku</option>     </select>    </dd>    <dt>Penulis</dt>    <dd><input type="text" name="penulis"/></dd>    <dt>Penerbit</dt>    <dd><input type="text" name="penerbit"/></dd>    <dt>ISBN</dt>    <dd><input type="text" name="isbn"/></dd>    <dt>Tanggal Terbit</dt>    <dd><input type="text" name="tgl_terbit"/></dd>    <dt></dt>    <dd><input type="submit" value="Simpan"/></dd>   </dl>  </form>  


Simpan kode di atas dengan nama form.php, kemudian buat file simpan.php untuk menyimpan data ke tabel product dan tabel buku, dengan kode di bawah.

<?php  if($_POST){   $conn = mysql_connect("localhost","root","");   mysql_select_db("test",$conn);    //menyimpan ke table product   $sql = "insert into product (nama,harga,jenis) values ('{$_POST['nama']}','{$_POST['harga']}','{$_POST['jenis']}')";   mysql_query($sql) or die('Gagal menyimpan produk');   //mencari id produk   $sql = "select max(id_produk) as last_id from product limit 1";   $hasil = mysql_query($sql);   $row = mysql_fetch_array($hasil);   $lastId = $row['last_id'];   //menyimpan data buku ke table buku   $sql = "insert into buku (id_produk,penulis,penerbit,isbn,tgl_terbit)    values ('$lastId','{$_POST['penulis']}','{$_POST['penerbit']}','{$_POST['isbn']}','{$_POST['tgl_terbit']}')";   mysql_query($sql) or die('Gagal menyimpan data buku');   echo 'data tersimpan';  }  


Bisa dilihat kode di atas hampir sama dengan kode untuk menyimpan data ke satu tabel. Pada baris ke-2 dilakukan pengecekan apakah ada data yang dikirim atau tidak. Jika ada data yang dikirim, di baris ke-3 dan 4 dilakukan koneksi ke database. Kemudian pada baris ke-6 dan 7 menyimpan data ke tabel product. Selanjutnya dari ke ke-9 sampai 16 adalah untuk menyimpan data ke tabel buku. 

Setiap tabel yang berelasi, tabel anak (dalam kasus ini tabel buku) memiliki sebuah foreign key, nilai foreign key ini diambil dari nilai referenced column -- primary key tabel induk (referenced table, tabel product dalam contoh ini). Pada contoh ini, kolom id_produk pada tabel buku adalah foreign key dan primary key tabel product (kolom id_produk) adalah referenced column. Nilai dari foreign key tidak boleh berisi nilai nilai yang tidak ada di reference colomn kecuali null.

Sekarang lihat kembali baris ke-9. Baris ke-9 sampai 12 adalah untuk mencari id_produk yang baru saja disimpan pada tabel product (baris ke-6 dan 7). Kenapa proses ini diperlukan? Karena nilai darikolom id_produk tabel buku tidak boleh berisi nilai nilai selain nilai yang ada di kolom id_produk tabel product. Selanjutnya baris ke-14 sampai 16 adalah untuk menyimpan data ke tabel buku, dan kolom id_produk diisi dengan nilai yang diperoleh dari baris sebelumnya (baris ke-9 sampai 12).

Menyimpan Data ke Tabel Berelasi Satu-ke-banyak



Disini akan diberikan contoh menyimpan Album musik. Album musik yang memiliki beberapa lagu. Struktur tabel album dan lagu seperti:



Pertama buatlah form html berikut:

<!-- file album.php -->  <form name="formalbum" action="simpan-album.php" method="post">  Judul Album: <input type="text" name="judul"/> Nama Artis: <input type="text" name="artis"/>  <table id="tabel-lagu" cellspacing="0" border="1" cellpadding="3">   <tr>    <td>NO. Track</td>    <td>Judul</td>    <td>Durasi</td>    <td>Delete</td>   </tr>   <tr>    <td><input type="text" name="no_track[0]"/></td>    <td><input type="text" name="judul_lagu[0]"/></td>    <td><input type="text" name="durasi[0]"/></td>    <td><button type="button" class="del">Del</button></td>   </tr>   <tr id="last">    <td colspan="4" align="right"><button type="button" id="addRow">Add</button></td>   </tr>  </table>  <input type="submit" value="Simpan"/>  </form>  <script type="text/javascript" src=" https://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"></script>  <script type="text/javascript">  var i = 1;  $(function(){   $("#addRow").click(function(){    row = '<tr>'+    '<td><input type="text" name="no_track['+i+']"/></td>'+    '<td><input type="text" name="judul_lagu['+i+']"/></td>'+    '<td><input type="text" name="durasi['+i+']"/></td>'+    '<td><button type="button" class="del">Del</button></td>'+    '</tr>';    $(row).insertBefore("#last");    i++;    });   });   $(".del").live('click', function(){    $(this).parent().parent().remove();    });  </script>  


Kode diatas akan membentuk form seperti berikut:



Yang perlu diperhatikan adalah atribut name dari element form (baris ke-12 sampai 14) yang diberi nilai seperti no_track[0]judul_lagu[0]durasi[0]. Penamaan seperti itu bertujuan agar data dikirim ke server berupa array. Selanjut buatlah file simpan-album.php untuk menyimpan data ke database.

<?php  //file simpan-album.php  if(!$_POST){   die('Tidak ada data yang disimpan!');  }  //koneksi ke database  $conn = mysql_connect("localhost","root","blah");  mysql_select_db("test");  //simpan ke tabel album  $sql = "insert into album (judul,artis) values ('{$_POST['judul']}','{$_POST['artis']}')";  mysql_query($sql) or die('Gagal menyimpan album');  //mencari id album  $sql = "select max(id) as id_album from album limit 1";  $row = mysql_fetch_array(mysql_query($sql));  $id_album = $row['id_album'];  //menyimpan data ke tabel lagu  foreach($_POST['judul_lagu'] as $key => $judul){   $sql = "insert into lagu(id_album, no_track,judul,durasi)    values ('{$id_album}','{$_POST['no_track'][$key]}','{$judul}','{$_POST['durasi'][$key]}')";   mysql_query($sql);  }  echo 'Data telah disimpan';  


Baris ke-1 sampai 15 sama dengan cara yang dilakukan untuk menyimpan data ke tabel berelasi satu ke satu. Pertama membuka koneksi ke database (baris ke-7 dan 8). Kemudian menyimpan data ke tabel album (baris ke-10 dan 11). Selanjutnya mencari id album yang baru saja disimpan (baris ke-13 s/d 15). Langkah terakhir (baris ke-17 s/d 21) adalah melakukan perulangan dan menyimpan satu persatu data ke tabel lagu, serta id_album diisi dengan nilai yang diperoleh sebelumnya di baris ke-13 s/d 15.

Menyimpan Data ke Tabel Berelasi Banyak-ke-banyak



Menyimpan data ke tabel yang berelasi banyak ke banyak merupakan bagian yang paling kompleks. Menyimpan datanya tidak bisa seperti cara cara sebelumnya, yang hanya sekali langkah. Menyimpan data ke tabel yang berelasi banyak ke banyak paling sedikit melewati 3 langkah. Agar lebih jelas akan dicontohkan relasi antara mahasiswa dan mata_kuliah yang direlasikan oleh tabel mahasiswa_mk, sebagai berikut:





Langkah Pertama: Menyimpan Data Mahasiswa.

Untuk menyimpan data mahasiswa gunakan kode php di bawah. Kode di bawah sama seperti yang digunakan untuk menyimpan data ke satu tabel.

<?php  // file mahasiswa.php  if($_POST){   $conn = mysql_connect("localhost","root","blah");   mysql_select_db("test",$conn);    $sql = "insert into mahasiswa (nim,nama,jurusan) values ('{$_POST['nim']}','{$_POST['nama']}','{$_POST['jurusan']}')";   mysql_query($sql);   echo 'Data telah disimpan';  }   ?>  <h3>Input Mahasiswa</h3>  <form name="form1" method="post" action="">  <dl>   <dt>NIM</dt>   <dd><input type="text" name="nim"/></dd>   <dt>Nama</dt>   <dd><input type="text" name="nama"/></dd>   <dt>Jurusan</dt>   <dd><input type"text" name="jurusan"/></dd>   <dt></dt>   <dd><input type="submit" value="Simpan"/></dd>  </dl>  </form>  


Simpan kode di atas dengan nama file mahasiswa.php

Langkah Kedua: Menyimpan Data Mata Kuliah

Menyimpan data mata kuliah sama seperti menyimpan data mahasiswa. Gunakan kode di bawah dan simpan dengan nama mata_kuliah.php.

<?php  //file mata_kuliah.php  if($_POST){   $conn = mysql_connect("localhost","root","blah");   mysql_select_db("test",$conn);    $sql = "insert into mata_kuliah (kode,nama) values ('{$_POST['kode']}','{$_POST['nama']}')";   mysql_query($sql);   echo 'Data telah disimpan';  }   ?>  <h3>Input Mata Kuliah</h3>  <form name="form1" method="post" action="">  <dl>   <dt>Kode MK</dt>   <dd><input type="text" name="kode"/></dd>   <dt>Nama</dt>   <dd><input type="text" name="nama"/></dd>   <dt></dt>   <dd><input type="submit" value="Simpan"/></dd>  </dl>  </form>  


Langkah Ketiga: Menyimpan Data Mata Kuliah Seorang Mahasiswa

Untuk mempermudah proses menyimpan data Mata Kuliah Seorang Mahasiswa, diperlukan kode untuk menampilkan daftar mahasiswa di bawah.

<?php  //file list-mahasiswa.php  $conn = mysql_connect("localhost","root","blah");  mysql_select_db("test",$conn);   $sql = "select * from mahasiswa";  $result = mysql_query($sql);  ?>  <table cellspacing="0" cellpadding="5" border="1">   <tr>    <td>NIM</td>    <td>Nama</td>    <td>Jurusan</td>    <td>Aksi</td>   </tr>   <?php while($mhs = mysql_fetch_array($result)){?>   <tr>    <td><?php echo $mhs['nim'];?></td>    <td><?php echo $mhs['nama'];?></td>    <td><?php echo $mhs['jurusan'];?></td>    <td><a href="mahasiswa_mk.php?nim=<?php echo $mhs['nim'];?>">Tambah Mata Kuliah</a></td>   </tr>   <?php }?>  </table>  


Simpan kode di atas dengan nama list-mahasiswa.php. Kode tersebut berfungsi untuk menampilkan daftar mahasiswa dan membuat link berjudul "Tambah Mata Kuliah" ke halamanmahasiswa_mk.php. Halaman mahasiswa_mk.php digunakan untuk menyimpan data mata kuliah seorang mahasiswa.

<?php  //file mahasiswa_mk.php  $conn = mysql_connect("localhost","root","blah");  mysql_select_db("test",$conn);  //mencari data mahasiswa  $sql = "select * from mahasiswa where nim='".mysql_real_escape_string($_GET['nim'])."'";  $mhs = mysql_fetch_array(mysql_query($sql));  ?>  <h2>Tambah Mata Kuliah Mahasiswa: <?php echo $mhs['nama'];?></h2>  <form name="form" method="post" action="simpan_mahasiswa_mk.php">  <?php  //mencari semua data mata kuliah  $subquery = "select id_mk from mahasiswa_mk where nim='".$mhs['nim']."'";  $sql = "select * from mata_kuliah where id not in ({$subquery})";  $result = mysql_query($sql);  while($mataKuliah = mysql_fetch_array($result)){   //membut checkbox   echo '<input type="checkbox" name="mata_kuliah[]" value="'.$mataKuliah['id'].'"/>';   echo $mataKuliah['kode'].': '.$mataKuliah['nama'].' ';  }  ?>  <input type="hidden" name="nim" value="<?php echo $mhs['nim'];?>"/>  <br/>  <input type="submit" value="Simpan"/>  </form>  


Baris ke-6 dan 7 kode di atas adalah untuk mencari data mahasiswa yang akan di tambahkan mata kuliahnya. Baris ke-8 menampilkan nama mahasiswa. Baris ke-13 dan 14 adalah membuat sql query untuk mencari mata kuliah yang belum ditambahkan ke mahasiswa bersangkutan. Untuk mempermudah di baris 13 dan 14 menggunakan subquery. Selanjutnya baris 15 s/d 20 untuk menampilkan checkbox mata kuliah yang belum dimiliki oleh mahasiswa bersangkutan.

Langkah berikutnya adalah membuat file simpan_mahasiswa_mk.php untuk menyimpan data mata kuliah mahasiswa.

<?php  //file simpan_mahasiswa_mk.php  if($_POST){   $conn = mysql_connect("localhost","root","blah");   mysql_select_db("test",$conn);   foreach($_POST['mata_kuliah'] as $id_matakuliah){    $sql = "insert into mahasiswa_mk (nim,id_mk) values ('{$_POST['nim']}','{$id_matakuliah}')";    mysql_query($sql) or die("Gagal Menyimpan Data".mysql_error());   }  }  header("Location: list-mahasiswa.php");  exit('Data disimpan');  


Kode di atas hampir sama dengan cara menyimpan data ke tabel berelasi satu ke banyak.

[+/-] Selengkapnya...

Konsep Dasar Pemrogaman Java


 

Apakah Java?

Java adalah bahasa pemrograman berorientasi objek yang dikembangkan oleh Sun Microsystems sejak tahun 1991. Bahasa ini dikembangkan dengan model yang mirip dengan bahasa C++ dan Smalltalk, namun dirancang agar lebih mudah dipakai dan ­platform independent, yaitu dapat dijalankan di berbagai jenis sistem operasi dan arsitektur komputer­­. Bahasa ini juga dirancang untuk pemrograman di Internet sehingga dirancang agar aman dan portabel.

Platform Independent

Platform independent berarti program yang ditulis dalam bahasa Java dapat dengan mudah dipindahkan antar berbagai jenis sistem operasi dan berbagai jenis arsitektur komputer. Aspek ini sangat penting untuk dapat mencapai tujuan Java sebagai bahasa pemrograman Internet di mana sebuah program akan dijalankan oleh berbagai jenis komputer dengan berbagai jenis sistem operasi. Sifat ini berlaku untuk level source code dan binary code dari program Java. Berbeda dengan bahasa C dan C++, semua tipe data dalam bahasa Java mempunyai ukuran yang konsisten di semua jenis platform. Source code program Java sendiri tidak perlu dirubah sama sekali jika Anda ingin mengkompile ulang di platform lain. Hasil dari mengkompile source code Java bukanlah kode mesin atau instruksi prosesor yang spesifik terhadap mesin tertentu, melainkan berupa bytecode yang berupa file berekstensi .class. Bytecode tersebut dapat langsung Anda eksekusi di tiap platform yang dengan menggunakan Java Virtual Machine (JVM) sebagai interpreter terhadap bytecode tersebut.

JVM sendiri adalah sebuah aplikasi yang berjalan di atas sebuah sistem operasi dan menerjemahkan bytecode program Java dan mengeksekusinya, sehingga secara konsep bisa dianggap sebagai sebuah interpreter. Proses pengeksekusian program Java dapat dilukiskan seperti di Gambar 1. Dengan cara ini, sebuah program Java yang telah dikompilasi akan dapat berjalan di platform mana saja, asalkan ada JVM di sana.

Kompiler dan interpreter untuk program Java berbentuk Java Development Kit (JDK) yang diproduksi oleh Sun Microsystems. JDK ini dapat didownload gratis dari situs java.sun.com. Interpreter untuk program Java sendiri sering juga disebut Java Runtime atau Java Virtual Machine. Interpreter Java, tanpa kompilernya, disebut Java Runtime Environment (JRE) dapat didownload juga di situs yang sama. Untuk mengembangkan program Java dibutuhkan JDK, sementara jika hanya ingin menjalankan bytecode Java cukup dengan JRE saja. Namun untuk mengeksekusi applet (sebuah bytecode Java juga) Anda biasanya tidak perlu lagi mendownload JRE karena browser yang Java-enabled telah memiliki JVM sendiri.

Library

Selain kompiler dan interpreter, bahasa Java sendiri memiliki library yang cukup besar yang dapat mempermudah Anda dalam membuat sebuah aplikasi dengan cepat. Library ini sudah mencakup untuk grafik, desain user interface, kriptografi, jaringan, suara, database, dan lain-lain.

OO

Java adalah bahasa pemrograman berorientasi objek. Pemrograman berorientasi objek secara gamblang adalah teknik untuk mengorganisir program dan dapat dilakukan dengan hampir semua bahasa pemrograman. Namun Java sendiri telah mengimplementasikan berbagai fasilitas agar seorang programer dapat mengoptimalkan teknik pemrograman berorientasi objek.

Sedikit perbandingan tambahan dengan bahasa C dan C++, Java banyak mewarisi konsep orientasi objek dari C++ namun dengan menghilangkan aspek-aspek kerumitan dalam bahasa C++ tanpa mengurangi kekuatannya. Hal ini mempermudah programer pemula untuk mempelajari Java namun mengurangi keleluasaan programer berpengalaman dalam mengutak-atik sebuah program. Di balik kemudahan yang ditawarkan Java, luasnya fasilitas library Java sendiri membuat seorang programer membutuhkan waktu yang tidak singkat untuk dapat menguasai penggunaan library-library tersebut.

Memulai Pemrograman Java

Untuk membuat program Java, seperti telah disebutkan sebelumnya, Anda membutuhkan JDK. Proses instalasi JDK tersebut sangat mudah dan tidak membutuhkan pengetahuan tertentu. Namun untuk menggunakannya Anda perlu melakukan beberapa penyesuaian dengan sistem operasi Anda. Umumnya yang perlu Anda lakukan adalah memasukkan path ke direktori JDK Anda ke setting path pada sistem operasi Anda. Misalkan direktori JDK Anda adalah C:\jdk1.4 maka pada Windows 98 Anda cukup menambahkan baris perintah SET PATH=C:\jdk1.4\bin pada file autoexec.bat Anda. Untuk Windows NT/2000/XP Anda cukup menambahkan direktori C:\jdk1.4\bin pada variabel path di System Environment. Caranya: klik kanan ikonMy Computer, pilih Properties. Kemudian pilih tab Advanced. Lalu klik tombol Environment Variables, cari variabel path, kemudian tambahkan path direktori JDK Anda ke dalam variabel tersebut. Untuk Linux, tambahkan baris perintah SET CLASSPATH=(direktori jdk Anda) ke file profile Anda. Untuk mencoba JDK, ketikkan perintah java dan javac pada shell prompt (atau DOS Command Prompt). Jika perintah tersebut sudah dikenali maka program java atau javac akan menampilkan sintaks penggunaan. Untuk kemudahan dan berbagai fasilitas tambahan Anda dapat menggunakan Integrated Development Environment (IDE) untuk bahasa Java seperti Visual Café dari Symantec atau JBuilder dari Borland.

Urutan langkah-langkah yang harus Anda lakukan untuk membuat sebuah program Java sederhana adalah:

  1. Membuat source code program dengan editor teks apapun. Ingat, file tersebut harus berekstensi .java dan case sensitive.
  2. Mengkompile source code dengan perintah javac. Misalnya: javac HelloWorld.java. Jika berhasil, hasilnya adalah file bytecode berakhiran .class.
  3. Mengeksekusi bytecode dengan perintah java. Parameter dari perintah ini adalah nama file hasil kompilasi tanpa ekstensi .class. Contoh: java HelloWorld.

Source Code

Berikut kode untuk HelloWorld.java:

public class HelloWorld
{
public static void main(String[] args)
{
System.out.println("Apa Kabar Dunia?");
}
}

Dan ini sebuah contoh lain, yaitu applet sederhana untuk menampilkan teks di applet. Sebutlah file ini bernama HelloWorldApplet.java:

import java.awt.Graphics;

public class HelloWorldApplet extends java.applet.Applet
{
public void paint(Graphics g)
{
g.drawString("Apa Kabar Dunia?", 5, 25);
}
}

Secara gamblang dapat diperhatikan bahwa struktur kedua program sangat mirip, dan hanya berbeda dalam konteks eksekusi. Kedua program ini akan dibahas lebih lanjut setelah kita membahas cara mengkompile dan mengeksekusi program tersebut.

Perlu diingat bahwa bahasa Java bersifat case sensitive, sehingga Anda harus memperhatikan penggunaan huruf besar dan kecil. Selain itu penulisan source code program tidak harus memperhatikan bentuk tertentu, sehingga Anda bisa saja menuliskan semua baris source code tersebut dalam satu baris asal Anda tidak lupa membubuhkan tanda titik koma (;), atau menuliskan tiap kata dalam satu baris tersendiri. Namun dianjurkan Anda mengikuti layout seperti pada contoh agar program Anda mudah dibaca dan dimengerti.

Kompilasi

Setelah kedua file disave dengan nama HelloWorld.java dan HelloWorldApplet.java, kita akan mengkompile kedua program tersebut dengan perintah:

prompt> javac HelloWorld.java
prompt> javac HelloWorldApplet.java

Perlu diperhatikan bahwa direktori aktif Anda saat ini adalah direktori tempat Anda meletakkan file-file program tersebut. Anda tetap dapat mengkompile program Anda dari direktori berbeda dengan perintah:

prompt> javac (direktori program)/namafile.java

Setelah perintah ini selesai, Anda akan melihat bahwa telah tercipta dua buah file .class, yaitu bytecode hasil kompilasi source code kita.

Sintaks Program

Sekarang kita akan mencoba membahas elemen-elemen dalam kedua source code tersebut.

Pada awal Listing 2 kita menemukan perintah import. Pada tahap awal ini Anda perlu mengetahui bahwa pernyataan tersebut hanya berfungsi mempermudah penulisan metode atau dalam bahasa pemrograman lain disebut prosedur atau fungsi. Jadi Anda hanya perlu menulis Graphics sebagai pengganti java.awt.Graphics, karena kita telah mengimpor java.awt.Graphics.

Kemudian di masing-masing listing terdapat pernyataan public class. Pernyataan ini adalah pernyataan pembuka sebuah kelas. Kelas sendiri digunakan untuk menciptakan objek. Ingat bahwa Java berorientasi objek. Kata public di depannya berfungsi agar kelas tersebut dapat diakses oleh semua program lain. Untuk saat ini anggaplah objek sebagai suatu item yang dapat dimanipulasi oleh sebuah program. Dalam Listing 2 terdapat tambahan kata extends. Hal ini berarti kelas yang kita buat akan mewarisi sifat-sifat dari kelas yang kita extends. Dengan kata lain kita menjadikan kelas yang kita extends sebagai himpunan bagian dari kelas kita buat.

Kemudian kita menemukan baris pernyataan public static void main(String[] args) dan public void paint(Graphics g). Keduanya adalah pernyataan pembuka sebuah metode. Metode sendiri adalah kumpulan pernyataan untuk melakukan suatu tugas tertentu dalam kelas. Keduanya sebenarnya mempunyai fungsi yang sama namun dalam konteks yang berbeda. Dalam setiap aplikasi harus ada sebuah metode yang bernama main yang akan dieksekusi pertama kali saat program tersebut dieksekusi. Sementara dalam applet, metode yang pertama kali akan dieksekusi ketika applet diload adalah paint. Kata public di depannya mempunyai fungsi yang sama dengan kata public yang ada di depan baris permulaan kelas. Namun nantinya Anda akan menemukan juga bentuk lain seperti private dan protect yang akan kita bahas nanti.

Pada Listing 1 terdapat kata static pada pernyataan pembuka metode main. Hal ini berarti metode main tidak mengubah atau menggunakan objek yang diciptakan oleh kelas tersebut, sehingga dapat dikatakan berdiri sendiri dan tidak terikat dengan objek. Dalam metode main dalam aplikasi, parameternya adalah selalu String[] args, di mana args hanyalah sebuah nama dari objek array dari String. Array ini nantinya akan berisi parameter-parameter yang diberikan user sebagai argumen command line. Sementara Anda tidak perlu mengerti mengenai parameter tersebut, cukup diingat bahwa bentuk metode main harus selalu demikian.

Kemudian di dalam kedua metode pada kedua listing tersebut, kita menemukan sebuah pernyataan. Anda tentu dapat saja meletakkan lebih dari satu pernyataan dalam sebuah metode. Setiap pernyataan dalam sebuah metode dipisahkan oleh titik koma dan akan dieksekusi satu persatu. Kedua pernyataan pada listing ternyata memanggil sebuah metode lain yaitu metode println dan paint. Tentunya dapat Anda perhatikan bahwa untuk memanggil sebuah metode diperlukan tiga komponen yaitu:

  1. Objek yang ingin kita pakai. Dalam hal ini objek System.out dan Graphics g.
  2. Nama metode yang ingin kita pakai. Dalam hal ini println dan paint.
  3. Sepasang tanda kurung yang berisi informasi tambahan yang diperlukan oleh metode yang dipanggil, yaitu parameter.

Dalam Listing 1, pernyataan System.out.println("Apa Kabar Dunia?"); berarti carilah objek out dalam kelas System kemudian panggil metode println dari objek out dengan parameter berupa string "Apa Kabar Dunia?". Sedang dalam Listing 2, pernyataan g.drawString("Apa Kabar Dunia?", 5, 25); berarti carilah objek g kemudian panggil metode drawString pada objek g dengan parameter "Apa Kabar Dunia?”, 5, 25);.

Eksekusi

Setelah selesai membahas sintaks dasar Java dalam kedua listing, selanjutnya kita akan mencoba mengeksekusi kedua program ini. Untuk program pertama yang berupa aplikasi biasa, kita tinggal mengetikkan perintah java HelloWorld pada prompt dan pesan Apa Kabar Dunia? akan tampil di layar (atau mungkin di tempat lain, bergantung sistem operasi Anda). Sedangkan untuk applet kita mesti membuat sebuah file HTML sebagai pembungkus—atau pemanggilnya. Berikut diberikan contoh file HTML untuk membungkus applet yang kita buat.

<HTML>
<HEAD>
<TITLE>Coba Applet</TITLE>
</HEAD>
<BODY>
<APPLET CODE="HelloWorldApplet.class" WIDTH=150 HEIGHT=25>
</APPLET>
</BODY>
</HTML>

Beri nama helloword.html dan simpanlah di direktori yang sama dengan lokasi file-file .java dan .class sebelumnya. Untuk mengeksekusi applet kita cukup membuka file HTML tersebut di browser yang Java-enabled atau mengetikkan perintahappletviewer namafile.html di prompt.


[+/-] Selengkapnya...

Sabtu, 03 Desember 2011

Membuat Tabel

Tabel sangat penting dalam sebuah dokumen website. Gunanya untuk menampilkan data-data dalam bentuk tabel.
Dalam HTML, kita mengenal adanya tag table ( <table> ) untuk membuat tabel. Untuk lebih lengkapnya, lihatlah struktur utama penyusun tabel berikut ini:

<table>

<tr>

<td></td>

</tr>

</table>



Untuk membuat tabel kita bisa memulainya dengan membuat tag pembuka tabel, yang artinya kita akan membuat tabel. Kemudian diikuti oleh tag , dimana ini artinya adalah jumlah baris pada tabel tersebut. Dan selanjutnya yang terakhir adalah tag dimana tag ini berfungsi untuk menunjukan kolom pada tabel.

<table>

<tr>

<td>nama</td>

<td>alamat</td>

<td>status</td>

</tr>

<td>pemrogaman web</td>

<td>jalan kemerdekaan</td>

<td>aktiv</td>

</tr>

<tr>

<td>pemrogaman java</td>

<td>indonesia</td>

<td>sukses</td>

</tr>

</<table>


Dari kode HTML diatas kalian akan menemukan tabel yang terdiri dari 3 baris dan tiga kolom. Kalian bisa menambahkan beberapa atribut seperti colspan yang berfungsi untuk menggabungkan kolom, rowspan yang berfungsi untuk menggabungkan baris, width untuk mengatur lebar kolom, dan masih banyak lagi.

[+/-] Selengkapnya...

Jumat, 02 Desember 2011

tutorial 1 - hello world

Learn C - Hello World

What is C and why learn it

C was developed in the early 1970s by Dennis Ritchie at Bell Laboratories. C was originally designed for writing system software but today a variety of software programs are written in C. C can be used on many different types of computers but is mostly used with the UNIX operating system.

It is a good idea to learn C because it has been around for a long time which means there is a lot of information available on it. Quite a few other programming languages such as C++ and Java are also based on C which means you will be able to learn them more easily in the future.



What you will need

This tutorial is written for both Windows and UNIX/Linux users. All the code in the examples has been tested and works the same on both operating systems.

If you are using Windows then you need to download borland C++ compiler from http://www.borland.com/cbuilder/cppcomp. Once you have downloaded and installed it you need to add "C:\Borland\BCC55\Bin" to your path. To add it to your path in Windows 95/98/ME you need to add the line "PATH=C:\Borland\BCC55\Bin" to c:\autoexec.bat using notepad. If you are using Windows NT/2000/XP then you need to open the control panel and then double click on "system".

 Click on the "Advanced" tab and then click "Environment Variables".
Select the item called "Path" and then click "Edit".
 Add ";C:\Borland\BCC55\Bin" to "Variable value" in the dialog box that appears and then click Ok and close everything.

All Windows users will now have to create a text file called "bcc32.cfg" in "C:\Borland\BCC55\Bin" and save the following lines of text in it:

-I"C:\Borland\BCC55\include"
-L"C:\Borland\BCC55\lib"
If you are using UNIX/Linux then you will most probably have a C compiler installed called GCC. To check if you have it installed type "cc" at the command prompt. If for some reason you don't have it then you can download it from http://gcc.gnu.org.

Your first program

The first thing we must do is open a text editor. Windows users can use Notepad and UNIX/Linux users can use emacs or vi. Now type the following lines of code and then I will explain it. Make sure that you type it exactly as I have or else you will have problems. Also don't be scared if you think it is too complicated because it is all very easy once you understand it.

#include

int main()
{
printf("Hello World\n");
return 0;
}
#include
This includes a file called stdio.h which lets us use certain commands. stdio is short for Standard Input/Output which means it has commands for input like reading from the keyboard and output like printing things on the screen.

int main()
int is what is called the return value which will be explained in a while. main is the name of the point where the program starts and the brackets are there for a reason that you will learn in the future but they have to be there.

{}
The 2 curly brackets are used to group all the commands together so it is known that the commands belong to main. These curly brackets are used very often in C to group things together.

printf("Hello World\n");
This is the printf command and it prints text on the screen. The data that is to be printed is put inside brackets. You will also notice that the words are inside inverted commas because they are what is called a string. Each letter is called a character and a series of characters that is grouped together is called a string. Strings must always be put between inverted commas. The \n is called an escape sequence and represents a newline character and is used because when you press ENTER it doesn't insert a new line character but instead takes you onto the next line in the text editor. You have to put a semi-colon after every command to show that it is the end of the command.

Table of commonly used escape sequences:

\a Audible signal
\b Backspace
\t Tab
\n Newline
\v Vertical tab
\f New page\Clear screen
\r Carriage return
return 0;

The int in int main() is short for integer which is another word for number. We need to use the return command to return the value 0 to the operating system to tell it that there were no errors while the program was running. Notice that it is a command so it also has to have a semi-colon after it.

Save the text file as hello.c and if you are using Notepad make sure you select All Files from the save dialog or else you won't be able to compile your program.

You now need to open a command prompt. If you are using Windows then click Start->Run and type "command" and Click Ok. If you are using UNIX/Linux and are not using a graphical user interface then you will have to exit the text editor.

Using the command prompt, change to the directory that you saved your file in. Windows users must then type:

C:\>bcc32 hello.c
UNIX/Linux users must type:

$cc hello.c -ohello
The -o is for the output file name. If you leave out the -o then the file name a.out is used.

This will compile your C program. If you made any mistakes then it will tell you which line you made it on and you will have to type out the code again and this time make sure you do it exactly as I did it. If you did everything right then you will not see any error messages and your program will have been compiled into an exe. You can now run this program by typing "hello.exe" for Windows and "./hello" for UNIX/Linux.

You should now see the words "Hello World" printed on the screen. Congratulations! You have just made your first program in C.

Indentation

You will see that the printf and return commands have been indented or moved away from the left side. This is used to make the code more readable. It seems like a stupid thing to do because it just wastes time but when you start writing longer, more complex programs, you will understand why indentation is needed.

Using comments

Comments are a way of explaining what a program does. They are put after // or between /* */. Comments are ignored by the compiler and are used by you and other people to understand your code. You should always put a comment at the top of a program that tells you what the program does because one day if you come back and look at a program you might not be able to understand what it does but the comment will tell you. You can also use comments in between your code to explain a piece of code that is very complex. Here is an example of how to comment the Hello World program:

/* Author: Your name
Date: yyyy/mm/dd
Description:
Writes the words "Hello World" on the screen */

#include

int main()
{
printf("Hello World\n"); //prints "Hello World"
return 0;
}

[+/-] Selengkapnya...

Kamis, 01 Desember 2011

procedure menu pada pascal

uses crt;
var L,K,s,a,t,p,y,r:real;
pilih:byte;
const phi=3.14;
procedure input_lingkaran;


begin
writeln (‘ini adalah sebuah program untuk menghitung luas dan keliling lingkaran’);
writeln (‘masukkan nilai r’);
readln (r);
end;
procedure input_segitiga;
begin
writeln(‘Menentukan Luas segitiga’);
write(‘Masukkan nilai alas :’);read(a);
write(‘Masukkan nilai tinggi :’);read(t);
end;
procedure input_persegipanjang;
begin
writeln(‘ Menentukkan Luas Persegi Panjang’);
write(‘Masukkan nilai panjang :’);read(p);
write(‘Masukkan nilai tinggi :’);read(y);
end;
procedure input_kubus;
begin
writeln(‘Menentukan Luas Kubus’);
write(‘Masukkan panjang sisi :’);read(s);
end;
procedure rumus_lingkaran;
begin
L:=3.14*r*r;
K:=2*3.14*r;
end;
procedure rumus_segitiga;
begin
L:=(a*t)/2;
end;
procedure rumus_persegipanjang;
begin
L:=p*y;
end;
procedure rumus_kubus;
begin
L:=6*s*s;
end;
procedure output_lingkaran;
begin
writeln (‘maka Luasnya adalah ‘);
writeln (L:2:2);
writeln (‘dan Kelilingnya adalah ‘);
writeln (K:2:2);
end;
procedure output_segitiga;
begin
write(‘Maka Luas Segitiganya adalah ‘);write(L:2:2);
end;
procedure output_persegipanjang;
begin
write(‘Maka Luas Persegi Panjang adalah ‘);write(L:2:2);
end;
procedure output_kubus;
begin
write(‘Maka Luas Kubusnya adalah ‘);write(L:2:2);
end;
procedure lingkaran;
begin
writeln;
input_lingkaran;
writeln;
rumus_lingkaran;
writeln;
output_lingkaran;
end;
procedure segitiga;
begin
writeln;
input_segitiga;
writeln;
rumus_segitiga;
writeln;
output_segitiga;
end;
procedure persegipanjang;
begin
writeln;
input_persegipanjang;
writeln;
rumus_persegipanjang;
writeln;
output_persegipanjang;
end;
procedure kubus;
begin
writeln;
input_kubus;
writeln;
rumus_kubus;
writeln;
output_kubus;
end;
begin
while true do
begin
writeln;
writeln;
clrscr;
write(‘***********************************************’);writeln;
write(‘***SELAMAT DATANG DI PROGRAM MENGHITUNG LUAS***’);writeln;
write(‘******** my-computer.blogspot.com *************’);writeln;
write(‘***********selamat mencoba***************’);writeln;
write(‘***********************************************’);writeln;
write(‘=================== MENU ==================’);writeln;
write(’1. Lingkaran’);writeln;
write(’2. Segitiga’);writeln;
write(’3. Persegi Panjang’);writeln;
write(’4. Kubus’);writeln;
write(’5. Keluar’);writeln;
write(‘===============================================’);writeln;
pilih:=0;
while(pilih5) do
begin
write(‘ Silahkan pilih nomor : ‘);read(pilih);
if (pilih5) then
end;
case pilih of
1: lingkaran;
2: segitiga;
3: persegipanjang;
4: kubus;
5: exit;
end;
end;
end.

[+/-] Selengkapnya...

menu pilihan dengan Pascal

bagi anda yang sedang belajar pemrogaman pascal, ini saya kasih scrip buat "Membuat menu pilihan dengan Pascal" semoga bisa bermanfaat

uses crt;
type
recmhs = record
nama : string;
kelas : string;
npm : string;
end;

Membuat menu pilihan dengan Pascal

uses crt;
type
recmhs = record
nama : string;
kelas : string;
npm : string;
end;

coba = object
mhs : array [1..5] of recmhs;
procedure input;
procedure output;
end;

var
i,j,pil : integer;
satu : recmhs;
dua : coba;
procedure coba.input;
begin
clrscr;
for i := 1 to j do
with mhs[i] do
begin
write('Nama :');readln(nama);
write('Kelas :');readln(kelas);
write('NPM :');readln(npm);
writeln;
end;
readln;
end;
procedure coba.output;
begin
clrscr;
for i := 1 to j do
with mhs[i] do
begin
writeln;
writeln('Nama kamu :',nama);
writeln('Kelas kamu :',kelas);
writeln('NPM kamu :',npm);
end;
readln;
end;
begin
clrscr;
write('Masukkan jumlah data yang akan diinput : ');
readln(j);
repeat;
clrscr;
writeln('........DATA MAHASISWA........');
writeln('1.input data');
writeln('2.output data');
writeln('3.keluar dari data');
writeln;
writeln('Masukkan pilihan anda : ');
readln(pil);
case pil of
1: dua.input;
2: dua.output;
end;
until(pil=3);
clrscr;
writeln('Terima kasih (^_^)');
readln;
end.


[+/-] Selengkapnya...

Jumat, 04 November 2011

membuat garis dan titik pada pascal

Bagi anda yang ingin mencoba membuat garis dan titik pada pascal, mungkin tutorial ini bisa membantu

Program garis_dari_titik;

Uses

Graph, crt;

Var

Xmax, ymax, gm, gd, i : integer;

Begin




Gd := CGA;

Gm := CGAC3;

InitGraph(gd,gm,’’);

Xmax := GetMaxX;

Ymax := GetMaxY;



For i := 0 to xmax do

Begin

PutPixel(i,0, 15);

PutPixel(i,ymax, 15);

End;


For i := 0 to ymax do

Begin

PutPixel(0,i, 15);

PutPixel(xmax,i, 15);

End;


Repeat until KeyPressed;

CloseGraph;

End.



Contoh progarm 1.1.2

Program garis_dari_titik;

Uses

Graph, crt;

Var

Xmax, ymax, gm, gd, i : integer;

Begin

Gd := CGA;

Gm := CGAC3;

InitGraph(gd,gm,’’);

Xmax := GetMaxX;

Ymax := GetMaxY;


i := 0;

Repeat

PutPixel(i,0, 15);

PutPixel(i,ymax, 15);

Inc(i);

Until i = xmax;



i := 0;

Repeat

PutPixel(0,i, 15);

PutPixel(xmax,i, 15);

Inc(i);

Until i = ymax;



Repeat until KeyPressed;

CloseGraph;

End.



Contoh progarm 6.3

Program garis_dari_titik;

Uses

Graph, crt;

Var

Xmax, ymax, gm, gd, i : integer;

Begin

Gd := CGA;

Gm := CGAC3;

InitGraph(gd,gm,’’);

Xmax := GetMaxX;

Ymax := GetMaxY;



i := 0;

Repeat

PutPixel(i,0, 15);

PutPixel(i,ymax, 15);

Inc(i);

Delay(10);

Until i = xmax;



i := 0;

Repeat

PutPixel(0,i, 15);

PutPixel(xmax,i, 15);

Inc(i);

Delay(10);

Until i = ymax;



Repeat until KeyPressed;

CloseGraph;

End.



Contoh progam 6.4

Program titik_acak;

Uses

Graph, crt;

Var

Gd, gm,

xmax, ymax, x, y, : integer;

Begin

ClrScr;

Gd := CGA;

Gm := CGAHi;

InitGraph(gd,gm,’’);

Xmax := GetMaxX;

Ymax := GetMaxY;

Rectangle(0,0, xmax,ymax);



Randomize;

Repeat

X := random(xmax);

Y := random(ymax);

PutPixel(x,y,15);



Until KeyPressed;

CloseGraph;

End.

selamat mencoba

[+/-] Selengkapnya...