Menu Tab

KOMPAS.com - Edukasi

Minggu, 22 Maret 2009

UTS - Kelas XI

Untuk UTS Web kelas XI Materi mulai dari modul 1-8, bentuk soal pilihan ganda dan terdapat 2 soal Kode A &  B.

Untuk materi modul bisa di download d http://gurusmkbima.blogspot.com/2009/02/download-modul-kelas-xi-dalam-pdf.html dalam format PDF yang terkompres (zip).

Untuk bentuk tampilan modul latihan file bisa dilihat secara online sebagai berikut:

  1. http://www.adisetiawan.co.nr/smkbima/modul3
  2. http://www.adisetiawan.co.nr/smkbima/modul4
  3. http://www.adisetiawan.co.nr/smkbima/modul6

Sementara untuk tampilan tugas bisa dilihat secara online pada:

  1. http://www.adisetiawan.co.nr/smkbima/tugas1
  2. http://www.adisetiawan.co.nr/smkbima/tugas2

Perlu diperhatikan komposisi nilai untuk kelas XI dapat di akses di http://gurusmkbima.blogspot.com/2009/02/kriteria-penilai-kelas-xi.html perlu diperhatikan untuk ke lulusan minimal nilai adalah 7 jika kurang dari itu siswa dinyatakan tidak naik kelas. Sehingga perlu di perhatikan komposisi nilai yang dapat membuat Anda lulus pada point mana jika nilai UTS/UAS tidak dapat mencapai nilai 100.

Database

Di sini kita akan belajar menggunakan database dengan database tingkat server yaitu MySQL, dimana didalam database MySQL terdapat 2 lisensi yaitu lisensi yang bersifat open source dengan menggunakan GNU (General Public License) dan lisensi komersial. Selain MySQL masih terdapat database yang lain seperti Microsoft SQL Server, Oracle, DB2, Postgree, dan Sybase serta masih banyak lagi yang lainnya yang semuanya termasuk kedalam RDBMS (Rational Database Management System).


MySQL dapat didefiniskan sebagai:

  • RDBMS dimana berfungsi untuk penyimpan data. Untuk menambah, mengakses, dan memproses data yang disimpan dalam sebuah database komputer.

  • Merupakan sistem manajemen database atau basis data terhubung dengan menggunakan SQL (Structured Query Language).

  • Merupakan software open source.

  • Server database MySQL mempunyai kecepatan akses cukup tinggi, mudah digunakan dan handal.

  • Dapat berkerja dengan sistem embedded.



MySQL mempunyai logo berupa ikan lumba-lumba yang bernama sakila. Nama tersebut merupakan kontribusi dari pemenang yang diadakan oleh MySQL AB yang dimenangkan oleh Ambroze Twebaze, seorang pengembang software Open Source.

Untuk mengkases SQL pada MySQL melalui browser secara umum kita menggunakan phpMyAdmin yang dapat diakses pada http://nama_server/phpmyadmin (tergantung konfigurasi server Anda). Adapun tampilan phpMyAdmin tampak pada gambar 8.1.



Gambar 8.1 Tampilan phpMyAdmin

Di dalam SQL terdapat sebuah SQL Statement yang terdiri dari:

























SQL

STATEMENT

SELECT

INSERT

UPDATE


DELETE

MERGE

Data Manipulation Language (DML)

CREATE

ALTER


DROP

RENAME

TRUNCATE

COMMENT

Data Definition Language (DDL)

GRANT

REVOKE

Data Control Language (DCL)

COMMIT


ROLLBACK

SAVEPOINT

Transaction Control


Untuk menghubungkan PHP kita ke dalam MySQL kita dapat menggunakan perintah sebagai berikut:

$conn = mysql_connect($nama_server, $nama_username, $password);


$conn = mysql_pconnect($nama_server, $nama_username, $password);


kemudian melakukan pemilihan nama databasenya dengan menggunakan

mysql_select_db($nama_database, $conn);

Berikut ini adalah gambaran dari struktur MySQL Server yang terdapat dalam Server kita, bagan ini diambil untuk versi MySQL 5.1 yang perlu diperhatikan disini adalah “Storage Engine” dikarenakan sistem ini sangat berpengaruh terhadap sistem yang akan kita bangun, pada dasarnya secara sederhana terdapat 2 engine yang sering digunakan adalah “MyISAM” dan “InnoDB”, untuk melihat lebih detail silahkan lihat gambar 8.2 tentang schema MySQL Server Database.

Gambar 8.2 Schema MySQL Server

sementara untuk menjalankan database dengan menggunakan PRADO kita akan membahas beberapa metode terhubung dengan database melalui PRADO adalah sebagai berikut:




  1. Data Access Object (DAO).

  2. Active Record (AR).

  3. Active Record Scaffold (ARS).

  4. SqlMap Data Mapper (SDM).


Untuk masing-masing metode akses database diatas memiliki kelebihan dan kekurangan sesuai dengan kebutuhan sistem yang akan kita buat. Di dalam koneksi database pada PRADO kita harus melakukan setting file application.xml kita pada path module. Perlu diperhatikan bahwa sistem koneksi database PRADO dengan memanfaatkan library dari PHP yaitu PDO sehingga konfigurasi server kita harus di cek apakah PDO sudah terinstall dengan database yang kita pakai. Untuk informasi lebih lanjut tentang PDO dapat diakses pada http://www.php.net/manual/en/ref.pdo.php.

Untuk mensetting database kita kedalam application.xml maka kita dapat menuliskan kodenya sebagai berikut:




<module id="myDB" class="System.Data.TDataSourceConfig">

<database ConnectionString="" Username="" Password="" />


</module>



Dimana untuk ConnectionString bisa diakses sesuai dengan database yang akan kita bangun, tampak pada table berikut ini:






















DATABASE

ConnectionString

MySQL

mysql:host=<nama server>;dbname=<nama db>

SQLite

sqlite:<lokasi filenya>

ODBC

odbc:<nama odbcnya>


Untuk informasi konfigurasi database yang lainnya silahkan kunjungi http://www.php.net/manual/en/ref.pdo.php#pdo.drivers untuk mengaksesnya. Untuk pembahasan lebih lanjut tentang pemanfaatan database akan dibahas pada modul berikutnya.

Array Dan String

Di sini kita akan belajar tentang pengunaan array dan string dalam PHP serta kita gabungkan dengan PRADO. Untuk itu kita akan belajar tentang pengunaan Array. Array adalah kumpulan beberapa data yang disimpan dalam satu variable, dalam hal ini berbeda dengan variable yang telah kita pelajari sebelumnya, dimana variable hanya menyimpan satu nilai saja, array dapat menampung lebih dari satu nilai.

Untuk dapat memahami berikut adalah salah satu contoh array dalam inisialisasi (deklarasi awal) suatu data. Di dalam array terdapat dua bagian dalam pembuatan model index yaitu:


  1. Index numeric (angka).


<?php

$siswa = array(“Tono”, “Tini”, Tina”);

?>

Atau

<?php


$siswa[] = “Tono”;

$siswa[] = “Tini”;

$siswa[] = “Tina”;

?>

Sehingga membentuk sebuah array atau matrik 1 dimensi dengan bentuk seperti berikut:
















Tono

Tini

Tina

0

1

2



$siswa



  1. Index asosiatif (berdasarkan nama).



<?php

$siswa = array(“Tono”=>”1”, “Tini”=>”2”, “Tina”=>”3”);

?>

Atau

<?php


$siswa[] = array(“Tono”=>”1”);

$siswa[] = array(“Tini”=>”2”);

$siswa[] = array(“Tina”=>”3”);

?>

Sehingga membentuk sebuah array dengan bentuk seperti berikut:
















Tono

Tini

Tina

1

2

3



$siswa




Untuk mengakses nilai dari array kita bias menggunakan looping, adapun contohnya adalah sebagai berikut untuk yang bertipe index numeric:

<?php

for($i=0; $i<=length($siswa); $i++){

echo($siswa[$i]);

}


?>


Dimana disini kita menggunakan fungsi string “length” untuk mengetahui jumlah index dari array yang tercipta. Sementara untuk yang bertipe index asosiatif adalah sebagai berikut:

<?php

while(list($index,$content) = each($siswa)){

echo(“Index ke-“.$index.” Berisi “.$content);

}


?>

Disini terdapat fungsi list dan each dimana untuk each berguna untuk mengakses masing-masing element dalam array, element yang dihasilkan adalah pasangan key dan value (dimana key adalah indexnya dan value adalah isinya). Pasangan tersebut dipisahkan oleh fungsi list dan dimasukkan ke dalam variable $index dan $content.



Setelah kita mengetahui tentang array dalam PHP sekarang kita akan menghubungkan array tersebut ke dalam PRADO. Biasanya control yang digunakan berada dalam List Controls (TListBox, TDropDownList, TCheckBoxList, TRadioButtonList, dan TBulletedList) dan Data Controls (TDataList, TDataGrid, dan TRepeater). Disini kita akan membuat sebuah halaman web seperti pada gambar 7.1 tentang penggunaan array dan TRepeater.



Setelah kita belajar tentang Array sekarang kita akan membahas tentang String dalam PHP, di dalam PHP untuk menggunakan perintah String dengan echo, print, atau printf. Adapun penulisan contoh diatas adalah sebagai berikut:

<?php

echo(“Hallo World!”);


echo “Hallo World!”;

print(“Hallo World!”);

printf(%s, “Hallo world!”);

?>

Di dalam penggunaan string tidak lupa kita menggunakan sistem manupulasi data tersebut adapun beberapa fungsinya adalah sebagai berikut:






















































































FUNGSI

KETERANGAN

addslashes

Menambahkan string dengan slash “\”

chr

Menampilkan suatu karakter

crypt

Melakukan enkripsi pada string

echo

Menampilkan satu atau lebih suatu string

explode

Memecah string

implode

Menggabungkan array dari element dengan suatu string

htmlspecialchars

Mengubah karakter tertentu ke dalam format HTML.

ltrim

Menghilangkan spasi atau karakter lain dari awal suatu string

md5

Melakukan suatu enkripsi ke dalam algoritma MD5.

nl2br

Menyisipkan tag HTML “<br />” (break) pada sebelum dari baris baru.

str_repeat

Melakukan penggulangan String.

str_replace

Melakukan perubahan sebuah string dengan kata yang diinginkan.

str_split

Mengubah sebuah string menjadi suatu array.

strlen

Menghitung panjang karakter.

substr

Menampilkan sebagian dari string.

substr_replace

Mengganti semua string dengan string pengganti.

trim

Menghilankan spasi atau karatker tertentu dari awal dan akhir suatu string.


Setelah kita mengetahui tentang “String” di dalam PRADO sama halnya dengan VB kita akan menampung perintah String ke dalam TLabel (PRADO) sama dengan Label (dalam VB). Dan perlu diperhatikan untuk mengabungkan suatu string baik variable atau kata menggunakan tanda titik “.”, perhatikan contoh String berikut dalam VB dan PHP

‘VB

SQL = “SELECT * “

SQL = SQL & “FROM tblTest”

‘PHP


<?php

SQL = “SELECT * “;

SQL .= “FROM tblTest”;

?>

Selasa, 10 Maret 2009

Struktur Kontrol

Pernyataan (statement) ataupun instruksi dalam setiap program seringkali tidak hanya dilaksanakan seklai jalan saja, akan tetapi pada bagian tertentu perlu ada pengulangan, atau pada suatu kondisi tertentu harus mengambil suatu keputusan dengan pilihan yang tepat dan bahkan tidak mungkin terdapat beberapa alternative yang muncul. Oleh karena itu dalam sebuah alur program memerlukan alur struktur yang jelas, yang disebut sebagai struktur kontrol (Control Structure).


Ada beberapa struktur kontrol yang dapat digunakan dalam sebuah alur program antara lain adalah:



  1. Percabangan (branching).


  2. Sering kali disebut dengan dengan decision making, memungkinkan program untuk memeriksa isi suatu variabel atau hasil dari suatu ekspresi perhitungan dan mengambil keputusan/tindakan yang sesuai.

  3. Perulangan (looping).


  4. Proses yang melakukan perulangan hingga kondisi terpenuhi untuk menghentikan proses dari perulangan.

  5. Perpindahan (jumping).


  6. Proses menghentikan/memindahkan proses ke alur berikutnya dalam sebuah proses looping.


    Setelah kita mengetahui tetang struktur kontrol sekarang kita membahas tipe yang ada pada struktur kontrol yaitu:




Percabangan (branching)



  • if … else …


  • berikut adalah alir diagram dari if – else





    penulisannya adalah sebagai berikut:


    if(kondisi){


    statement true


    } else {


    statement false


    }

  • if … elseif … else …


  • berikut adalah alir diagram dari if-elseif-else





    penulisannya adalah sebagai berikut:


    if(kondisi){


    statement1


    }elseif(kondisi){


    statement2


    }else{


    Statement3


    }



  • switch … case …


  • berikut adalah alur dari diagram switch, kalau dalam VB dikenal dengan nama SELECT … CASE …





    penulisannya adalah sebagai berikut:


    switch(kondisi){



    case nilai_kondisi:




    statement;


    break;






    default:




    statement;


    break;




    }






Perulangan (looping)



  • Struktur perulangan For


  • Penggunaan for (statement for) sering disebut dengan determinate loop, yang dimana looping yang jumlah pengulangannya (iterasi) telah ditentukan di awal looping.


    Penulisannya adalah sebagai berikut:


    for(nilai_awal; batas_akhir_perulangan; penambahan/pengurangan variabel){


    statement;


    }


    Contoh:


    <?php


    for($i=0; $i <= 10; $i++){


    echo($i);


    }


    ?>


    Melakukan perulangan dimulai dari 0 sampai 10 dengan hasil mencetak angka 0-10.

  • Struktur perulangan While


  • Dengan dengan nama indeterminate loop, yang dimana jumlah loopingya tidak ditentukan pada awal looping.


    Penulisannya adalah sebagai berikut:


    while(kondisi){


    Statement;


    }


    Contoh:


    <?php


    $b = 10;


    while($b>0){


    $b--;


    }


    ?>


    Melakukan perulangan dengan cara menghitung mundur dari angka 10-1.

  • Struktur perulangan do-while


  • Sama dengan while hanya bedanya adalah perintah dalam statement dikerjakan terlebih dahulu baru mengerjakan perintah perulangannya.


    Penulisannya adalah sebagai berikut:


    do{


    Statement;


    }while(kondisi)


    Contoh:


    <?php


    $a=10;


    do{




    $a--;


    }while($a > 0)


    ?>



    Hasilnya sama dengan while hanya proses increment dijalankan terlebih dahulu.






Perpindahan (jumping)



  • Break


  • Digunakan untuk menghentikan suatu proses perulanggan.


    Contoh:


    <?php


    for($i=0; $i<10; $i++){



    if($i == 3) break;




    }


    ?>


    Akan melakukan perulangan dari 0-9 namun didalam perulangan tersebut pada kondisi statement “if” terdapat nilai jika sama dengan 3 maka proses perulangan akan dihentikan. Sehinga hasilnya adalah 0-3.

  • Continue


  • Perintah ini digunakan untuk melakukan perulangan dari awal proses.


    Contoh:


    <?php


    $a = 0;


    $b = 0;


    while(1){



    $a++;


    if($a < 6) continue;


    $b++;


    break;



    }


    ?>


    Nilai $a akan melakukan increment penambahan sampai $a kurang dari 6 maka akan dilanjutkan lagi dimana pada saat $a lebih dari 6 maka nilai $b akan bertambah, dan perulangan akan berhenti.

Sistem Operator

Sistem Operator



Operator adalah suatu symbol yang digunakan untuk memanipulasi nilai suatu variabel yang nilainya dimodifikasi oleh operator disebut sebagai operand. Operator diklasifikasikan menjadi:





  1. Operator Assignment




  2. Digunakan untuk memberi/mengisi nilai ke dalam variabel tertentu.



  3. Operator Arithmetic




  4. Digunakan untuk melakukan perhitungan matematika.



  5. Operator Comparison




  6. Digunakan untuk membandingkan  dua buah nilai, operator comparison ini dikenal sebagai operator relational. Hasil perbandingan dari penggunaan operator ini dinyatakan dalam nilai Boolean yaitu TRUE berarti benar dan FALSE berarti salah.



  7. Operator Logical


  8. Digunakan untuk membandingkan dua nilai variabel yang bertipe boolean. Operator logical membandingkan operand-operand dan memberi hasil berupa nilai logika TRUE (benar) atau FALSE (salah).





Berikut ini adalah contoh-contoh dari setiap operator sebagai berikut:





  1. Operator Assigment




    1. +=




    2. Menambahkan nilai pada variabel.


      Contoh:


      $a += 3; sama dengan $a = $a + 3;


    3. -=




    4. Mengurangi nilai pada variabel.


      Contoh:


      $a -= 3; sama dengan $a = $a – 3;


    5. *=




    6. Mengalikan variabel dengan bilangan tertentu.


      Contoh:


      $a *= 3; sama dengan $a = $a * 3;


    7. /=




    8. Membagi variabel dengan bilangan tertentu.


      Contoh:


      $a /= 3; sama dengan $a = $a / 3;


    9. %=




    10. Mencari sisa hasil bagi variabel dengan bilangan tertentu.


      Contoh:


      $a %= 3; sama dengan $a = $a % 3;



    11. &=




    12. Melakukan operasi logical AND pada variabel


      Contoh:


      $a &= TRUE; sama dengan $a = $a & TRUE;


    13. |=




    14. Melakukan operasi logical OR pada variabel


      Contoh:


      $a |= TRUE; sama dengan $a = $a | TRUE;


    15. ^=




    16. Melakukan operasi bitwise XOR pada variabel


      Contoh:


      $a ^= 3; sama dengan $a = $a ^ 3;


    17. .=




    18. Menambhakan String pada variabel


      Contoh:


      $a .= “aku”; sama dengan $a = $a . “aku”;


    19. ++




    20. Menambahkan nilai satu pada variabel


      Contoh:


      $a++; sama dengan $a = $a + 1;


    21. –-




    22. Mengurangi nilai satu pada variabel


      Contoh:


      $a--; sama dengan $a = $a – 1;




  2. Operator Arithmetic




    1. + (penjumlahan).


    2. - (pengurangan).


    3. * (perkalian).


    4. / (pembagian).


    5. % (nilai sisa pembagian).




  3. Operator Comparison




    1. == (sama dengan).




    2. Memeriksa apakah operand kanan bernilai sama dengan operand kiri.


      Contoh:


      $a == $b;


      Jika nilai $a sama dengan $b maka menghasilkan nilai TRUE.



    3. > (lebih besar).




    4. Memeriksa apakah operand kiri bernilai lebih besar dari pada operand kanan.


      Contoh:


      $a > $b;


      Jika nilai $a lebih besar dari nilai $b maka menghasilkan nilai TRUE.



    5. < (lebih kecil).


    6. Memeriksa apakah operand kiri bernilai lebih kecil dari pada operand kanan.


      Contoh:


      $a < $b;


      Jika nilai $a lebih kecil dari nilai $b maka menghasilkan nilai TRUE.


    7. >= (lebih besar atau sama dengan).




    8. Memeriksa apakah operand kiri bernilai lebih besar atau sama dengan operand kanan.


      Contoh:


      $a >= $b;


      Jika nilai $a lebih besar dari atau sama dengan nilai $b menghasilkan nilai TRUE.



    9. <=(lebih kecil atau sama dengan).


    10. Memeriksa apakah operand kiri bernilai lebih kecil atau sama dengan operand kanan.


      Contoh:


      $a =< $b;


      Jika nilai $a lebih kecil dari atau sama dengan nilai $b menghasilkan nilai TRUE.


    11. != (tidak sama).




    12. Memeriksa apakah operand kiri tidak bernilai sama dengan operand kanan.


      Contoh:


      $a != $b;


      Jika nilai $a tidak sama nilai $b menghasilkan nilai TRUE.





  4. Operator Logical




    1. && (And).




    2. Contoh:


      $a && $b;



    3. || (Or)


    4. Contoh:


      $a || $b;


    5. Xor


    6. Contoh:


      $a xor $b;


    7. ! (Not)




    8. !$a;










Berikut ini adalah tabel logika dapat dilihat hasilnya sebagai berikut:























































































































































































































Nilai 1

Operator

Nama

Nilai 2

Hasil

TRUE

&&

AND

TRUE

TRUE

TRUE

&&

AND

FALSE

FALSE

FALSE

&&

AND

TRUE

FALSE

FALSE

&&

AND

FALSE

FALSE

TRUE

||

OR

TRUE

TRUE

TRUE

||

OR

FALSE

TRUE

FALSE

||

OR

TRUE

TRUE

FALSE

||

OR

FALSE

FALSE

TRUE

XOR

Exclusive OR

TRUE

FALSE

TRUE

XOR

Exclusive OR

FALSE

TRUE

FALSE

XOR

Exclusive OR

TRUE

TRUE

FALSE

XOR

Exclusive OR

FALSE

FALSE

!

!

NOT

TRUE

FALSE

!

!

NOT

FALSE

TRUE



Setelah mempelajari tentang sistem operator sekarang kita akan belajar tentang penggunaan event-handler (sistem kendali) dalam penggunaan PRADO. Di dalam VB (Visual Basic) kita mengenal adanya event untuk setiap control yang ada seperti command (button), form (layout), dan lain sebagainya, karena konsep PRADO mengadopsi dari ASP.NET maka tidak lah terlalu sulit untuk menggunakan sistem kendali. Perhatikan tampilan web pada gambar 4.1 dimana kita akan belajar dengan PRADO membuat aplikasi penggunaan operator serta bagaimana cara menggunakan action pada tombol pada PRADO.



gb



Gambar 4.1  Tampilan program Operator



Untuk listing kode secara lengkap dapat di download pada URL yang telah disediakan oleh penulis. Di sini perlu diperhatikan adalah file “Index.php” dimana penamaan class harus sesuai dengan nama file dan nama file “.php” juga harus sama dengan nama file “.page”, perlu diperhatikan bahwa file “.page” kalau dalam VB berfungsi sebagai Form atau layout sedangkan untuk file “.php” merupakan kelas yang berfungsi untuk menghandle event pada Form. Perhatikan potongan kode listing program berikut:





















































1

<table width="75%" border="0" cellspacing="0" cellpadding="0">

2

<thead>


<tr>


<th>Nilai 1</th>


<th>Operator</th>


<th>Nilai 2</th>


</tr>


</thead>


<tbody>

3

  <tr>


<td align="center"><com:TTextBox ID="txtNilai1" /></td>


<td align="center">


<com:TDropDownList ID="ddlOper" SelectedIndex="0">


<com:TListItem Value="0" Text="+=" />


<com:TListItem Value="1" Text="-=" />


</com:TDropDownList>    </td>


<td align="center"><com:TTextBox ID="txtNilai2" /></td>


</tr>

4

  <tr>


<td colspan="3" align="center">      


<com:TButton ID="btnHitung" Text="Proses" OnClick="btnHitung_OnClick" />


</td>


</tr>

5

  <tr>


<td align="right">Hasilnya :&nbsp;</td>


<td colspan="2"><com:TLabel ID="lblHasil" /></td>


</tr>

6

</tbody>


</table>



Perlu diperhatikan untuk kode line ke-4 terdapat event “OnClick” yang akan memangil function “btnHitung_OnClick” untuk melakukan proses. Untuk penulisan function tersebut kita tuliskan pada file “Index.php” seperti pada listing berikut:




class Index extends TPage {  


public function btnHitung_OnClick($sender, $param){


$data1 = $this->txtNilai1->Text;


$data2 = $this->txtNilai2->Text;


$operand = $this->ddlOper->SelectedValue;


$hasil;          


switch($operand){


case 0:


$data1 += $data2;                  


break;


case 1:


$data1 -= $data2;


break;


}


$hasil = $data1; 


$this->lblHasil->Text = $hasil;


}


}




Dimana untuk setiap penggunaan function ada variabel yang harus dimasukkan kita menggunakan nama “$sender” dan “$param” serta perlu diperhatikan bahwa untuk class Index merupakan turunan dari kelas TPage yang dimana nama file dan class harus sama dengan nama file pada UI yaitu “Index.page”. Seperti dalam VB kita menggunakan perintah dalam setiap form dengan kata “me” diikuti dengan “.” Contoh: Me.Label1.Caption = “Test” maka di dalam PHP kita menggantinya menjadi “$this->Label1->Caption” namun disini ada beberapa perubahan untuk penggunaan Label dalam PRADO menggunakan TLabel sehingga berubah menjadi “$this->Label1->Text = “Test”;” seperti dapat dilihat pada kode listing diatas yaitu “$this->lblHasil->Text = $hasil;”. Untuk penggunaan percabangan (branching) akan kita bahas pada modul berikutnya.