Oke gan,Pada posting sebelumnya ane udah njelasin tentang KonversiBil melalui JAVA sekarang ane mau posting nih Konversi Bilangan dengan PHP.
seperti biasanya
-Pertama Siapin dulu Netbeansnya
-Kedua masukkin nih koding
script ane :
1.letakkan di atas gan
if(isset($_POST['submit'])){ //apakah tombol sudah tersubmit
$bil=$_REQUEST['bil']; //merequrest dari textbox
if(isset ($_POST['konversi'])){ //mengecek apakah radio button sudah terpilih
$konversi=$_REQUEST['konversi']; //meriquest isi dari radiobutton
}
else{ //jika belum
$konversi=''; //radio button diisi kossong
}
$cek=''; //$cek diisi kossong
} else { //selain itu
$bil=''; //textbox berisi kosong
$konversi=''; //radio button berisi kosong
$cek="Harus diisi lengkap!"; //var cek berisi kalimat
}
?>
2. letakkan diantara body
3.Letakkan dibawahbody/form
if(isset($_POST['submit'])) {// apakah data ter-submit? //membuat variable untuk menyimpan data yang dikirim $bil=$_REQUEST['bil']; if(isset($_POST['konversi'])){ $konversi=$_REQUEST['konversi']; }else{ $konversi=''; } // cek apaka data yang dikirim tidak kossonng
if($bil==''||$konversi==''){ //mengecek jika bil dan konversi
echo '
Maaf data kurang lengkap
'; }else{ if($konversi=='L'){
if (isset($_POST['bil'])) {//apakah data ter-submit? $decimal =$_POST['bil']; $original=$_POST['bil']; $binary=''; if (preg_match('/[^0-9]/', $decimal)){//memastikan inputan adalah angka die("Maaf. Inputan salah..."); } else { while ($decimal>0){//looping memutuskan apakah 1 atau 0 yang ditambah if($decimal%2 ==0){ //menambah 0 $binary .=0 ;//$binary=0+binary; $decimal /=2;//$binary=binary/2; } else{//menambah 1 $binary .=1;//$binary=1+binary; $decimal = ($decimal/2)-0.5; } } $result = strrev($binary);//hasil dibalik echo "Bilangan $original (desimal) dalam biner adalah $result.";//hasil } }
nah script di atas ini kalok di run hasilnya gini gan :
nah dah jadi dah Konversinya,tapi kalok kosongan gitu kagak seru gan
bisa ente kasih css3 dsb. biar bagus tampilannya, kayak punya ane nih , project web ane yang gue bikin waktu TA kelas 1 smk ane utek-utek jadi ginini:
1.Halaman Awal
2.Halaman Bila data tidak Diisi Lengkap
3.Nah ni Gan Konversi dari decimal Ke Biner,Hexa and Octal
Nah itu semua gan hasil gue..
semoga aja bermanfaat ya :D
terima kasih
Pada Post kali ini saya akan membagikan ilmu tentang Program Konversi Bilangan Decimal to Biner dengan pemrograman PHP.
Bilangan desimal
adalah bilangan yang menggunakan 10 angka mulai 0 sampai 9 berturut2. Setelah
angka 9, maka angka berikutnya adalah 10, 11, 12 dan seterusnya. Bilangan
desimal disebut juga bilangan berbasis 10. Contoh penulisan bilangan desimal :
1710. Ingat, desimal berbasis
10, maka angka 10-lah yang menjadi subscript pada
penulisan bilangan desimal.
Bilangan biner adalah bilangan yang hanya menggunakan 2
angka, yaitu 0 dan 1. Bilangan biner juga disebut bilangan berbasis 2.
Setiap bilangan pada bilangan biner disebut bit, dimana 1 byte = 8 bit. Contoh penulisan : 1101112.
berikut merupakan script dari program tersebut...
if (isset($_POST['decimal'])) {//apakah data ter-submit? $decimal =$_POST['decimal']; $original=$_POST['decimal']; $binary=''; if (preg_match('/[^0-9]/', $decimal)){//memastikan inputan adalah angka die("Maaf. Inputan salah..."); } else { while ($decimal>0){//looping memutuskan apakah 1 atau 0 yang ditambah if($decimal%2 ==0){ //menambah 0 $binary .=0 ;//$binary=0+binary; $decimal /=2;//$binary=binary/2; } else{//menambah 1 $binary .=1;//$binary=1+binary; $decimal = ($decimal/2)-0.5; } } $result = strrev($binary);//hasil dibalik echo "Bilangan $original (desimal) dalam biner adalah $result. Backto the script";//hasil } } else{ ?>
Post kali ini merupakan lanjutan dari post yang sebelumnya tetang konversi bilangna decimal to octal.. pada post kali ini saya akan membagikan konversi bilangan dari decimal ke hexa decimal.. semoga bermanfaat :D
Bilangan desimal
adalah bilangan yang menggunakan 10 angka mulai 0 sampai 9 berturut2. Setelah
angka 9, maka angka berikutnya adalah 10, 11, 12 dan seterusnya. Bilangan
desimal disebut juga bilangan berbasis 10. Contoh penulisan bilangan desimal :
1710. Ingat, desimal berbasis
10, maka angka 10-lah yang menjadi subscript pada
penulisan bilangan desimal.
Bilangan heksadesimal, atau bilangan heksa, atau
bilangan basis 16, menggunakan 16 buah simbol, mulai dari 0 sampai 9,
kemudian dilanjut dari A sampai F. Jadi, angka A sampai F merupakan
simbol untuk 10 sampai 15. Contoh penulisan : C516. berikut merupakan script dari program tersebut....
if (isset
($_POST['decimal'])) {
$decimal = $_POST['decimal'];
$des = $_POST['decimal'];
if (preg_match('/[^0-9]/', $decimal)){
die("Maaf, inputan yang anda
masukkan salah :p");
}
else {
$hexa = dechex($decimal);
$hasil = strrev($hexa);
echo "
Bilangan $des
(desimal) dalam hexadesimal adalah : $hasil
Pada post kali ini saya akan membagikan ilmu tentang konversi bilangan desimal ke octal melaui PHP..
Bilangan desimal
adalah bilangan yang menggunakan 10 angka mulai 0 sampai 9 berturut2. Setelah
angka 9, maka angka berikutnya adalah 10, 11, 12 dan seterusnya. Bilangan
desimal disebut juga bilangan berbasis 10. Contoh penulisan bilangan desimal :
1710. Ingat, desimal berbasis
10, maka angka 10-lah yang menjadi subscript pada
penulisan bilangan desimal.
Bilangan oktal adalah bilangan berbasis 8, yang menggunakan angka 0 sampai 7. Contoh penulisan : 178.
berikut merupakan script dari program tersebut :
if
(isset($_POST['decimal'])) {
$des = $_POST['decimal'];
$original = $_POST['decimal'];
$oct ='';
if (preg_match('/[^0-9]/',$des)){
die("Maaf. Inputan yang anda
masukkan salah :p");
}
else {
while($des>0){
$hasil=$des%8;
switch($hasil){
case 0: $oct.="0"; break;
case 1: $oct.="1"; break;
case 2: $oct.="2"; break;
case 3: $oct.="3"; break;
case 4: $oct.="4"; break;
case 5: $oct.="5"; break;
case 6: $oct.="6"; break;
case 7: $oct.="7"; break;
case 8: $oct.="10";
break;
case 9: $oct.="11";
break;
case 10: $oct.="12";
break;
case 11: $oct.="13";
break;
case 12: $oct.="14";
break;
case 13: $oct.="15";
break;
case 14: $oct.="16";
break;
case 15: $oct.="17";
default:break;
}
if($oct/8==0){
$sisa=($des%8);
$oct=$sisa;
}else{
$sisa=($des/8);
$des=$sisa%8;
}}
$hasil = strrev($oct);
echo "
Bilangan $original
(desimal) dalam bilangan Octal : $hasil
Tentang Apa c Itu XAMPP... XAMPPjika dibahas huruf per huruf adalah X (yang berarti cross, cross platform), A (yang berarti Apache HTTP server), M (yang berarti MySQL), P (yang berarti PHP), dan P yang terakhir (yang berarti Perl).
Kalo di istilahkan XAMPP adalah suatu installer web server yang berisi
Apache HTTP dan MySQL dan mendukung program PHP dan Perl sehingga dengan menginstall XAMPP maka tidak perlu lagi melakukan instalasi dan konfigurasi web serverApache, PHP dan MySQL secara manual. XAMPP akan menginstalasi dan mengkonfigurasikannya secara otomatis untuk anda atau auto konfigurasi. Kurang lebihnya seperti itu.
Versi XAMPP yang ada saat ini adalah Versi 1.7.3 yang
terdiri atas :
Apache sudah berkembang sejak versi pertamanya. Sampai saat ditulisnya
artikel ini versi terakhirnya yang ada yaitu Apache ver 2.0.54. Apache
bersifat open source, artinya setiap orang boleh menggunakannya,
mengambil dan bahkan mengubah kode programnya.
Tugas utama apache adalah menghasilkan halaman web yang benar kepada
peminta, berdasarkan kode PHP yang dituliskan oleh pembuat halaman web.
Jika diperlukan juga berdasarkan kode PHP yang dituliskan, maka dapat
saja suatu database diakses terlebih dahulu (misalnya dalam MySQL) untuk
mendukung halaman web yang dihasilkan.
2. Mengenai PHP
PHP singkatan dari PHP Hypertext Preprocessor yaitu bahasa pemrograman
web server-side yang bersifat open source. PHP adalah script yang digunakan untuk membuat halaman web
yang dinamis. Dinamis berarti halaman yang akan ditampilkan dibuat saat
halaman itu diminta oleh client. Mekanisme ini menyebabkan informasi
yang diterima client selalu yang terbaru/up to date. Semua script PHP
dieksekusi pada server dimana script tersebut dijalankan.
PHP dapat dijalankan pada berbagai macam Operating System (OS),
misalnya Windows, Linux dan Mac OS. Selain Apache, PHP juga mendukung
beberapa web server lain, misalnya Microsoft IIS, Caudium, PWS dan
lain-lain.
Seperti pernah disinggung sebelumnya bahwa PHP dapat memanfaatkan
database untuk menghasilkan halaman web yang dinamis. Sistem manajemen
database yang sering digunakan bersama PHP adalah MySQL. Namun PHP juga
mendukung system manajemen Database Oracle, Microsoft Acces, Interbase,
d-Base, PostgreSQL dan sebagainya.
Hingga kini PHP sudah berkembang hingga versi ke 5. PHP 5 mendukung
penuh Object Oriented Programing(OOP), integrasi XML, mendukung semua
ekstensi terbaru MySQL, pengembangan web services dengan SOAP dan REST,
serta ratusan peningkatan kemampuan lainnya dibandingkan versi
sebelumnya. Sama dengan web server lainnya PHP juga bersifat open source
sehingga setiap orang dapat menggunakannya dengan gratis.
3. Mengenai MySQL Pperkembangannya disebut SQL yang merupakan
kepanjangan dari Structured Query Language. SQL merupakan bahasa
terstruktur yang khusus digunakan untuk mengolah database. SQL pertama
kali didefinisikan oleh American National Standards Institute (ANSI)
pada tahun 1986. MySQL adalah sebuah sistem manajemen database yang
bersifat open source. MySQL adalah pasangan serasi dari PHP. MySQL
dibuat dan dikembangkan oleh MySQL AB yang berada di Swedia.
MySQL dapat digunakan untuk membuat dan mengola
database beserta isinya. Kita dapat memanfaatkan MySQL untuk
menambahkan, mengubah dan menghapus data yang berada dalam database.
MySQL merupakan sisitem manajemen database yang bersifat at relational.
Artinya data-data yang dikelola dalam database akan diletakkan pada
beberapa tabel yang terpisah sehingga manipulasi data akan menjadi jauh
lebih cepat.
MySQL dapat digunakan untuk mengelola database
mulai dari yang kecil sampai dengan yang sangat besar. MySQL juga dapat
menjalankan perintah-perintah Structured Query Language (SQL) untuk
mengelola database-database yang ada di dalamnya. Hingga kini, MySQL
sudah berkembang hingga versi 5. MySQL 5 sudah mendukung trigger untuk
memudahkan pengelolaan tabel dalam database.
4. Mengenai PHPMyAdmin
Pengelolaan database dengan MYSQL harus dilakukan
dengan mengetikkan baris-baris perintah yang sesuai (command line)
untuk setiap maksud tertentu. Jika anda ingin membuat database, ketikkan
baris perintah yang sesuai untuk membuat database. Jika kita ingin
menghapus tabel, ketikkan baris perintah yang sesuai untuk menghapus
tabel. Hal tersebut tentu cukup menyulitkan karena kita harus hafal dan
mengetikkan perintahnya satu persatu.
Banyak sekali perangkat lunak yang dapat
dimanfaatkan untuk mengelola data base dalam MySQL, salah satunya adalah
phpMyAdmin. Dengan phpMyAdmin kita dapat membuat tabel, mengisi data
dan lain-lain dengan mudah tanpa harus hafal perintahnya. Untuk
mengaktifkan phpMyAdmin langkah-langkahnya adalah : yang pertama setelah
XAMP kita terinstall, kita harus mengaktifkan web server Apache dan
MySQL dari control panel XAMPP. Yang kedua, jalankan browser kesayangan
Anda (IE, Mozilla Firefox atau Opera) lalu ketikkan alamat web berikut :
http://localhost/phpmyadmin/ pada address bar lalu tekan Enter. Langkah
ketiga apabila telah nampak interface (tampilan antar muka) phpMyAdmin
anda bisa memulainya dengan mengetikkan nama database, nama tabel dan
seterusnya.
5. Perl parl adalah bahasa pemrograman untuk segala keperluan,
dikembangkan pertama kali oleh Larry Wall di mesin Unix. perl dirilis pertama
kali pada tanggal 18 Desember 1987 dengan ditandai dengan keluarnya perl 1.
pada versi-versi selanjutnya perl tersedia juga untuk berbagai sistem operasi
varian Unix (SunOS, Linux, BSD, HP-UX), juga tersedia untuk sistem operasi
seperti DOS, Windows, PowerPC, BeOS, VMS, EBCDIC,dan PocketPC. Dukungan
terhadap pemrograman berbasis obyek (Object Oriented Program/OOP) ditambah pada
perl 5, yang pertama kali dirilis pada tanggal 3 Juli 1993. proyek pengembangan
perl 6 dimulai pada tahun 2000, dan masih berlangsung hingga kini tanpa tanggal
yang jalas kapan mau dirilis. ini dikatakan sendiri oleh Larry Wall dalam satu
pidatonya yang dikenal dengan seri The State Of the Onion. dua diantara
karakteristik utama Perl adalah penanganan teks dan berbagai jalan pintas untuk
menyelesaikan persoalan-persoalan umum. prl sangat popular digunakan dalam
program-program CGI (Common Getewy Interface) dan berbagai protocol internet
lainnya. seperti diketahui, TCP/IP sebagai basis bagi semua protocol internet
yang dikenal sekarangini dikenal dengan format
teks dalam komunikasi data. seperti juga bahasa popular lainnya, perl
menerima banyak krtikan. meski banyak diantaranya hanya berupa mitos, atau
berlebih-lebihan, tetapi terdapa juga keritikan yang valid. salah satunya
adalah, sintaksnya susah dibaca, karena banyak menggunakan symbol-simbol yang
bukan huruf dan angka.
kalo teman-teman mau mencoba atau ingin punya installernya maka dapatkan installer XAMPP terlebih dahulu dengan cara pinjem CD, atau didownload saja... Nih linknya http://sourceforge.net/project/showfiles.php?group_id=61776. Silahkan sesuaikan dengan sistem operasi yang teman-teman gunakan.
Konsep atau cara kerja HTML itu sangat sederhana, yaitu berawal dari client yang memanggil berdasarkan URL (Uniform Resource Locator) melalui browser, kemudian browser mendapat alamat dari web server, yang nantinya akan memberikan segala informasi yang dibutuhkan web browser. Web browser yang sudah mendapat informasi segera melakukan proses penterjemahan kode HTML dan menampilkannya ke layar pemakai.
Konsep HTML
Hampir sama denga konsep kerja HTML, konsep kerja PHP
hanya perlu penterjemahan khusus untuk
kode-kode PHP yang nantinya akan diterjemahkan oleh mesin PHP ke kode
HTML terlebih dahulu sebelum diterjemahkan browser untuk ditampilkan di
layar klien. Untuk lebih jelasnya lihat skema yang ada untuk
membandingkan konsep kerja HTML dengan PHP.
konsep PHP
PHP dan DATABASE
Salah satu kelebihan yang ada pada PHP yaitu mampu berkomunikasi dengan
database yang beraneka ragam. Maka, PHP bisa menampilkan isi database
dengan dinamis dan mudah diimplementasikan, sehingga membuat PHP
disebut sangat cocok untuk membuat web yang paling dinamis.
Sampai saat ini, PHP sudah dapat berkomunikasi dengan berbagai macam
database dengan kelengkapan yang berbeda-beda, diantaranya :
MySQL
MSQL
Oracle
Inges
Ms Access
InterBase
DBM
Informix
FilePro (Personix, Inc)
Sybase, dan
PostgreSQL.
Itu tadi sedikit penjelasan tentang konsep kerja PHP dan hubungan PHP dengan Database, semoga bermanfaat bagi semuanya.
PHP atau Personal Home Page adalah yang paling banyak dipakai saat ini. PHP banyak dipakai untuk memrogram situs web dinamis, walaupun tidak tertutubahasa pemrograman script p kemungkinan digunakan untuk pemakaian lain.
Kelebihan PHP dari bahasa pemrograman lain
Bahasa pemrograman PHP adalah sebuah bahasa script yang tidak melakukan sebuah kompilasi dalam penggunaanya.
Web Server yang mendukung PHP dapat ditemukan dimana – mana dari mulai apache, IIS, Lighttpd, nginx, hinggaXitami dengan konfigurasi yang relatif mudah.
Dalam sisi pengembangan lebih mudah, karena banyaknya milis – milis dan developer yang siap membantu dalam pengembangan.
Dalam sisi pemahamanan, PHP adalah bahasa scripting yang paling mudah karena memiliki referensi yang banyak.
PHP adalah bahasa open source yang dapat digunakan di berbagai mesin (Linux, Unix, Macintosh, Windows) dan dapat dijalankan secara runtime melalui console serta juga dapat menjalankan perintah-perintah system.
Tipe Data
Integer
Double
Bolean
String
object
Array
Null dan Nill
Resource
BERIKUT INI CONTOH-CONTOH DALAM PROGRAM PHP
PHP VARIABEL
Misalkan dalam PHP kita akan menyimpan suatu nilai berupa angka atau
string dalam suatu variabel, caranya adalah membuat nama variabel
terlebih dahulu kemudian diberikan suatu assignment pada nilai yang
diinginkan. Perhatikan sintaks berikut ini :
$nama_variabel = nilai; Note: jangan lupa tanda dollar ($)
Dari contoh di atas tampak bahwa dalam PHP, nama variabel tidak perlu
dideklarasikan terlebih dahulu seperti halnya bahasa Pascal atau C/C++.
Aturan Penamaan Variabel
Berikut ini adalah beberapa aturan penulisan nama variabel:
•Nama variabel harus diawali dengan huruf atau underscore (_)
•Nama variabel hanya boleh dituliskan dengan alpha numeric a-z, A-Z,
0-9 dan underscore
•Nama variabel yang terdiri lebih dari satu kata, dapat dipisahkan dengan
underscore
Echo
Seperti yang Anda lihat pada contoh-contoh kode PHP sebelumnya,
bahwa perintah echo digunakan untuk menampilkan teks ke dalam browser.
Suatu teks atau string dapat dituliskan di browser dengan langsung
dituliskan dalam echo yang diapit oleh dua tanda petik ganda (quotes)
atau menyimpan string atau teks terlebih dahulu dalam suatu variabel
kemudian dituliskan dalam echo.
Berikut ini adalah contohnya:
Contoh:
$StringKu = “Hello!”;
echo $StringKu;
echo “
I love using PHP!
”;
?>
Penting!!!
Hati-hati dalam penulisan suatu string yang di dalamnya terdapat
tanda petik ganda (quotes) menggunakan echo. Dalam echo, tanda quotes
merupakan penanda awal dan akhir teks/string yang akan ditulis dengan
echo, sehingga Anda harus memperhatikan hal-hal berikut ini
•Jangan menggunakan tanda quotes di dalam teks yang akan ditulis
dengan echo
•Apabila Anda tetap ingin menuliskan tanda quotes dalam teks yang
akan ditulis dengan echo, maka berikan tanda slash “\” di depan quotes
tersebut.
•Selain itu, dapat pula Anda gunakan tanda petik tunggal (apostrophes)
untuk menggantikan tanda quotes pada teks.
Contoh:
echo “I love using PHP!”;
?>
echo “I love using PHP!”;
?>
echo “I love using PHP!
”;
?>
Pada contoh kode pertama di atas akan terjadi error karena dalam
teks yang ditulis dalam echo terdapat tanda quotes. Sedangkan untuk
kode kedua dan ketiga tidak terdapat error dan akan dihasilkan output
yang sama di browser.
Menampilkan Nilai Variabel dengan Echo
Nilai variabel dapat dengan mudah ditampilkan dengan menggunakan
echo, baik nilai yang berupa bilangan maupun string. Berikut ini adalah
contoh-contoh di antaranya:
Untuk menampilkan nilai variabel dengan echo tanpa menggunakan tanda
quotes. Berikut ini contoh menampilkan gabungan suatu nilai dari
variabel yang berupa string.
Contoh:
$string_ku = “Hello. Nama saya: “;
$baris_baru = “ ”;
echo $string_ku.”Ari”.$baris_baru;
echo “Hi, Nama saya Ari. Kamu siapa? “.$string_ku.$baris_baru;
echo “Hi, Nama saya Ari. Kamu siapa? “.$string_ku.”Amalia”;
?>
Untuk menggabungkan beberapa string menjadi satu digunakan operator
dot (.)
PHP SINTAKS
Apabila Anda membuat kode PHP dan berencana akan mendistribusikan ke
pihak/orang lain, maka usahakan untuk menggunakan sintaks . Hal ini dikarenakan untuk penggunaan kode yang menggunakan terkadang tidak bisa dijalankan dalam server tertentu.
Menyimpan File PHP
Apabila Anda memiliki kode PHP yang disisipkan dalam HTML dalam
suatu file dan menginginkan web server dapat menjalankannya, maka file
tersebut harus disimpan dalam ekstensi .php. Apabila Anda menyimpannya
dengan ekstensi .html atau .htm, maka kode PHP tersebut tidak akan
diproses dan akan ditampilkan dalam web browser seperti apa adanya
(berupa kode-kode).
Contoh:
Halaman PHP pertamaku
echo “Hello World!”;
?>
Semicolon (;)
Apabila Anda perhatikan contoh sebelumnya, maka terdapat tanda titik
koma (semicolon) pada akhir perintah echo. Tanda semicolon merupakan
penanda akhir dari statement PHP dan harus ada.
PHP OPERATOR
Dalam bahasa pemrograman secara umum, operator digunakan untuk
memanipulasi atau melakukan proses perhitungan pada suatu nilai. Sampai
saat ini, Anda telah mengenal operator “.” (menggabungkan string) dan
“=” (proses assignment). Selain dua operator itu masih banyak jenis
operator yang lain dalam PHP yaitu:
Perbandingan digunakan untuk menguji hubungan antara nilai dan atau
variabel. Operator ini digunakan dalam suatu statement bersyarat yang
selalu menghasilkan nilai TRUE atau FALSE.
Misalkan:
$x = 4; $y = 5;
berikut ini adalah beberapa contoh penggunaan operator perbandingan dan
hasilnya.
Operator Makna Contoh Hasil
== Sama dengan $x == $y FALSE
!= Tidak sama dengan $x != $y TRUE
< Lebih kecil dari $x < $y TRUE
> Lebih besar dari $x > $y FALSE
<= Lebih kecil atau sama dengan dari $x <= $y TRUE
>= Lebih besar atau sama dengan dari $x >= $y FALSE
1. Sejarah
PHP adalah bahasa pemrogaman web atau scripting language yang didesain untuk web. PHP
dibuat pertama kali oleh Rasmus Lerdford untuk menghitung jumlah pengunjung pada
homepagenya pada akhir tahun 1994. PHP terus berkembang dari PHP 1 yang ditulis ulang
Rasmus dalam bahasa C pada tahun 1995 sampai PHP 4 yang diluncurkan tanggal 22 Mei
2000.
2. Aplikasi Bahasa PHP
PHP digunakan sebagai landasan operasi pada pemrogaman jaringan berbasis web.
PHP digunakan juga untuk pemrogaman database.
PHP digunakan untuk membuat aplikasi web
3. Kelebihan dan Kekurangan
Kelebihan:
PHP menjadi popular karena kesederhanaannya dan kemampuannya dalam
menghasilkan berbagai aplikasi web seperti counter, system artikel/ CMS, e-commerce,
bulletin board, dan lain-lain.
PHP adalah salah satu bahasa server-side yang didesain khusus untuk aplikasi web.
PHP termasuk dalam Open Source Product dan telah mencapai versi 4.
Aplikasi PHP cukup cepat dibandingkan dengan aplikasi CGI dengan Perl atau
Phyton bahkan lebih cepat disbanding dengan ASP maupun Java dalam berbagai
aplikasi web.
Tersedia baik di Windows maupun Linux, walau saat ini paling efektif di web server
Apache dan OS Linux.
Sintaks mirip C dan mudah dipelajari.
Komunitas yang ramai dan saling membantu, seperti di diskusiweb.com,
phpbuilder.com, phpindo.com, dan lain-lain.
Berbagai script atau aplikasi yang gratis telah tersedia.
Kekurangan :
Tidak detail untuk pengembangan skala besar
Tidak memiliki system pemrogaman berorientasi objek yang sesungguhnya.
Tidak bisa memisahkan antara tampilan dengan logic dengan baik.
PHP memiliki kelemahan security tertentu apabila programmer tidak jeli dalam
melakukan pemrogaman dan kurang memperhatikan isu konfigurasi PHP.
Kode PHP dapat dibaca semua orang, dan kompilasi hanya dapat dilakukan dengan
tool yang mahal dari Zend.
Tutorial php Sistem Login dengan Tipe User & Hak Akses Berbeda menjelaskan langkah langkah membuat login sistem dengan beberapa tipe user yang memiliki hak akses yang berbeda beda pula.
Pada tutorial ini Anda mungkin menemukan hal
baru atau hal yang bisa membingungkan, oleh karena itu Anda perlu
membaca dengan seksama!
Sistem login menyangkut 2 hal/konsep/proses yaitu Otentikasi & Otorisasi atau Authentication & Authorization
Otentikasi & Otorisasi
Kedua konsep ini perlu dipahami sebelum memulai membuat kode login sistem yang akan dijelaskan di tutorial php ini.
Otentikasi atau Authentication adalah proses
mengkonfirmasi identitas dari seseorang atau suatu benda. Misalkan pada
saat pulang ke rumah dan mengetuk pintu masuk, maka ibu Anda akan
menanyakan siapa yang mengetuk pintu, sebelum mempersilahkan Anda masuk.
Otorisasi atau Authorization adalah proses memberi izin
seseorang atau suatu benda untuk melakukan sesuatu. Contoh, setelah Anda
dipersilahkan masuk, maka Anda akan diizikan untuk duduk di ruang tamu,
menonton tv, membaca majalah di meja, masuk ke kamar tidur Anda. Namun
tidak mengizinkan Anda menggunakan laptop ayah Anda atau membuka kotak
penyimpanan.
Proses otentikasi & otorisasi menyangkut 4 komponen penting.
Orang atau benda yang akan melakukan sesuatu dan dikonfirmasi indentitasnya, dalam contoh di atas Anda sendiri;
Aksi yang dilakukan, misal membaca, menonton;
Benda yang dikenakan Aksi, misal tv, buku, kamar tidur;
Peran atau role dari orang di dalam sistem, misal peran Anda di rumah yaitu sebagai Anak.
Perlu ditekankan di komponen terakhir peran. Pada saat Anda berdiri di depan pintu rumah, saat mengetuk pintu, maka peran Anda adalah "TAMU" atau "GUEST". Setelah ibu Anda mengkonfirmasi diri Anda dan mengizinkan Anda masuk ke dalam rumah, maka peran Anda berubah menjadi "ANAK". Jika yang mengetuk pintu ayah Anda maka setelah diizinkan masuk perannya berubah dari "TAMU" ke "KEPALA KELUARGA". Peran inilah yang menentukan aksi apa yang boleh Anda lakukan terhadap sebuah benda. AksiAksi apa saja yang bisa Anda lakukan berdasarkan peran Anda sering disebut dengan hak akses.
Menyiapkan Tabel Database
Langkah
pertama yang perlu dilakukan adalah membuat tabel yang akan digunakan
pada tutorial ini. Buatlah tabel dengan nama "user" seperti di bawah:
_______________________________________________________________________
| kolom | tipe data | keterangan |
-----------------------------------------------------------------------
| user_id | varchar(40) | primary key |
-----------------------------------------------------------------------
| name | varchar(50) | |
-----------------------------------------------------------------------
| password | varchar(50) | |
-----------------------------------------------------------------------
| type | varchar(20) | mencatat tipe/peran user |
-----------------------------------------------------------------------
CREATETABLE`user`(
`user_id`VARCHAR(40)NOTNULL,
`name`VARCHAR(50)NULL,
`password`VARCHAR(50)NULL,
`type`VARCHAR(20)NULL,
PRIMARYKEY(`user_id`))
DEFAULTCHARACTERSET= utf8
COLLATE= utf8_general_ci;
Perlu diperhatikan di tabel di atas ada satu kolom type, kolom type digunakan untuk mencatat/menentukan peran pengguna setelah berhasil login.
Membatasi Hak Akses Pengguna Berdasarkan Tipe/Peranan (Otorisasi)
Pada
bagian ini akan dimulai membuat kode php untuk membatasi hak akses.
Seperti dijelaskan di atas otentikasi & otorisasi menyangkut 4
komponen. Jika dikaitkan dengan contoh kode di tutorial ini maka 4
komponen tersebut adalah sebagai berikut:
Orang atau benda-> pengguna atau pengunjung website;
Pada
baris ke-2 sampai ke-5 digunakan untuk mencegah akses langsung ke file
config.php, file harus di-include oleh file lain dengan mendifinisikan konstanta__NOT_DIRECT terlebih dahulu.
Baris ke-7 adalah bagian terpenting, mendifinisikan konstanta BASE_URL
jika Anda mengakses tutorial ini di browser seperti
http://localhost/tutorial/multi-login/ maka BASE_URL diisi dengan
/tutorial/multi-login/. Jika http://localhost/multi-login/ maka isi
BASE_URL dengan /multi-login/. Tinggal hilangkan localhost, lebih
mudahnya lagi jika Anda membuat tutorial ini di folder
htdocs/tutorial/multi-login maka isi BASE_URL dengan
tutorial/multi-login.
Baris selanjutnya adalah mendefinisikan konstanta untuk koneksi ke database.
Konfigurasi Hak Akses Masing Masing Tipe User
Setelah
selesai mendefinisikan konfigurasi global, selanjutnya adalah membuat
file konfigurasi hak akses masing masing tipe user, halaman web mana
saja yang bisa diakses setiap tipe user.
Pertama buat folder dengan nama "akses".
Di dalam folder akses buatlah 3 file, file admin.php untuk pengguna dengan peran admin, file user.php untuk pengguna dengan peran user (user biasa), dan file guest.php untuk pengguna dengan peran guest.
Masing masing file tersebut adalah sebagai berikut:
file admin.php
ketiga file di atas berisi satu variabel dengan nama $__akses_config dengan tipe data array,
variabel $__akses_config berisi data array dari halaman halaman mana
saja yang bisa diakses masing masing tipe user. Contoh admin boleh
mengakses halaman admin/list-user.php sedangkan user dan guest tidak
bisa, kemudian semua pengguna bisa mengakses halaman login.php.
Jumlah file di folder akses tidak terpaku hanya 3 buah, bisa ditambah
sesuai dengan kebutuhan, sesuai dengan tipe user yang diinginkan.
File Untuk Otorisasi User
Langkah
selanjutnya adalah membuat file cek-akses.php. File ini digunakan untuk
menentukan apa peran pengguna dan halaman apa saja yang bisa
dikunjungi.
Pertama mencegah akses langsung ke file cek-akses.php, file harus
di-include oleh file lain dengan mendifinisikan konstanta __NOT_DIRECT
terlebih dahulu.
Membuka session di baris ke-7, baris ke-8 meng-include file config.php yang telah dibuat sebelumnya. Baris ke-9 sampai 14 mengecek apakah pengguna sudah login, jika belum login maka tipenya adalah "guest" dan sebaliknya tipe user sesuai dengan nilai $_SESSION['tipe_user'] (sesuai dengan nilai dari tabel user). Catatan:
Berikut penjelasan beberapa fungsi yang mungkin baru Anda ketahui:
DIRECTORY_SEPARATOR adalah konstanta yang berisi nilai 'pemisah folder', di windows nilainya \ dan di linux /.
__FILE__ adalah konstanta yang berisi nilai nama lengkap file
beserta nama foldernya misal, file cek-akses.php ada di folder
C:\xampp\htdocs\multi-login maka __FILE__ akan berisi
C:\xampphtdocsmulti-logincek-akses.php.
dirname fungsi untuk mendapatkan nama folder dari sebuah file atau
folder, dirname('C:\xampp\htdocs\multi-login\cek-akses.php'); akan
menghasilkan 'C:\xampp\htdocs\multi-login'.
Ketiga meng-include salah satu file yang ada di folder akses yang
dibuat sebelumnya, sesuai dengan tipe pengguna yang diperoleh pada kode
di atas. Jika tipe pengguna guest maka include file akses/guest.php,
jika admin maka include file akses/admin.php
Kelima jika pengguna tidak diizinkan dan pengguna belum login
maka pengguna dialihkan ke halaman login (baris 28 dan 29), sebaliknya
ditampilkan text "Anda tidak diizinkan mengakses halaman ini!" (baris
31).
Setelah membuat skrip untuk otorisasi pengguna di atas, langkah selanjutnya adalah membuat skrip untuk Otentikasi user.
File Login.php
Berikut adalah langkah langkah untuk membuat file login.php, langkah langkah mengotentikasi pengguna.
Pertama mendefinisikan konstanta __NOT_DIRECT dan meng-include file cek-akses.php
Ketiga cek kebenaran user_id dan password yang diinput pengguna.
Jika benar buat 3 session $_SESSION['tipe_user'], $_SESSION['user_id'],
dan $_SESSION['my_user_agent'] dan alihkan pengguna ke halaman
admin/index.php. Sebaliknya jika user_id atau password salah tampilkan
pesan "ID User atau password salah!"
Sekarang
buatlah folder admin dan file admin/index.php, admin/add-user.php dan
admin/add-artikel.php. Masing masing file ditambahkan kode di bawah di
bagian paling atas.
Sekarang
akses dari browser http://localhost/multi-login/admin/index.php maka
Anda akan dialihkan ke halaman login. Masukkan user id test dan password
123456. Setelah berhasil login akses
http://localhost/multi-login/admin/add-user.php maka akan muncul text
"Anda tidak diizinkan mengakses halaman ini!". Dengan langkah yang sama
coba login dengan admin dan password admin, lalu akses
http://localhost/multi-login/admin/add-user.php maka Anda akan
diperbolehkan mengaksesnya serta text "Anda tidak diizinkan mengakses
halaman ini!" akan hilang.