HTML
Teks & Dasar Tag HTML:
<html>
<head>
<!-- Bagian Head --!>
<title></title>
</head>
<body>
<!-- Bagian Body --!>
</body>
</html>
Jenis Dokumen
Judul
Header
Batang Tubuh
<html></html>
<title></title>
<head></head>
<body></body>
Heading
o tag <hr
align
color
size
width
noshad
Paragraf
o Tag-tag Pemformatan
Tag Awal
Tag Akhir
<b>
</b>
<big>
</big>
<em>
</em>
<i>
</i>
<small>
</small>
<strong>
</strong>
<sub>
</sub>
<sup>
</sup>
<pre>
</pre>
<blockquote> </blockquote>
Keterangan
Mendefinisikan teks yang ditebalkan
Mendefinisikan teks yang besar ukurannya
Mendefinisikan teks yang ditekankan (miring)
Mendefinisikan teks yang dimiringkan italic
Mendefinisikan teks yang dikecilkan ukurannya
Mendefinisikan teks yang ditebalkan
Mendefinisikan teks yang dijaikan subscript
Mendefinisikan teks yang superscript
Mendefinisikan teks preformatted
Mendefinisikan quotation yang panjang (awal paragraph)
Font
o
o
o
Size
Color
Face
<font size=?></font>
<font color="#$$$$$$"></font>
<font face="***"></font>
Table:
<table>
<th>
<tr>
<td>
<caption>
<colgroup>
<col>
<thead>
<tbody>
<tfoot>
Mendefinisikan tabel
Mendefinisikan header tabel
Mendefinisikan baris tabel
Mendefinisikan cell tabel
Mendefinisikan caption tabel
Mendefinisikan group kolom tabel
Mendefinisikan atribut nilai jumlah kolom tabel
Mendefinisikan head tabel
Mendefinisikan body tabel
Mendefinisikan footer tabel
Create Table
<table border=1 cellpadding=3 cellspacing=3 align=center>
<tr bgcolor=silver>
<td align=center>NIM</td>
<td align=center>NAMA LENGKAP</td>
</tr>
<tr>
<td>13101025</td>
<td>Sulastra Rahayu</td>
</tr>
</table>
Table Properties
border
rows
column
table width
border thickness
cellspacing
cellpadding
align
valign
bgcolor
rowspan
colspan
width
height
:
:
:
:
:
:
:
:
:
:
:
:
:
:
lebar image
tinggi image
sumber / letak image
untuk memberikan judul pada gambar /adalah deskripsi gambar jika kursor di tempat gambar
pilih Class jika menggunakan definisi CSS
jika image digunakan sebagai link
jarak image dari tulisan atasnya
jarak image dari tulisan disampingnya
tebal bingkai image
letak posisi image Right | Left | Center
width="114"
height="62"
hspace="10"
vspace="5"
Resizing Images
Text & Image
<p>Sebuah gambar<img src="jpg/bunga1.jpg" width="103" height="77" align="bottom">
di tengah teks dengan atribut align = top</p>
coords=x1,y1,x2,y2
coords=x1,y1,x2,y2,x3,y3.xn,yn
coords=x,y,r
coords=x,y
Hyperlinks:
<a href="http://www.google.com">Link ke www.google.com </a>
href
target
style
class
name
id
title
rel
Link Absolut (Membuat Link ke Page Web Lain Yang Berada di Internet)
<a href="http://www.google.com" >Link ke google</a>
Mail to
<a href="mailto:info@eepis-its.edu">info@eepis-its.edu </a>
Active Elements:
Marquee
<marquee behavior=alternate direction=up>Universitas Narotama Surabaya</marquee>
1. behavior
: Untuk mengatur gaya gerakan pada gambar ataupun teks.
o alternate
:Untuk menggerakan gambar atau teks secara bolak-balik.
o slide
: Untuk menggerakan gambar atau teks berjalan ke satu arah sekali saja.
o scroll
: Untuk menggerakan gambar atau teks ke satu arah secara Continue.
2. direction
: Untuk mengatur arah gerakan gambar ataupun teks.
o up
: Untuk menggerakan suatu object bergerak keatas.
o down
: Untuk menggerakan suatu object bergerak kebawah.
o left
: Untuk menggerakan suatu object bergerak kekiri.
o right
: Untuk menggerakan suatu object bergerak kekanan.
3. face
: Untuk mengatur jenis font / teks seperti.
4. width
: Untuk mengatur ukuran panjang atau lebar ruangan gambar/teks dalam satuan pixel.
5. height
: Untuk mengatur ukuran Tinggi ruangan gambar/teks dalam satuan pixel.
6. bgcolor
: Untuk mengatur warna background.
7. scrolldelay
: Untuk mengatur ukuran waktu tunda gerakan dalam satuan per mili detik.
8. scrollamount
: Untuk mengatur ukuran kecepatan gerakan dalam satuan pixel.
9. loop
: Untuk mengatur ukuran jumlah pengulangan.
Counter
Animation Graphics
Frame:
<frameset>
<frame>
<noframes>
<iframe>
Dengan frame, anda akan mempunyai dua jenis dokumen yang jelas berbeda.
Layout documents, (Dokumen tata letak) dapat menciptakan frame. Dokumen ini biasanya tidak menampilkan isi
apapun. Fungsinya semata-mata untuk membagi jendela menjadi beberapa area (beberapa bidang).
Content documents, (Dokumen isi) akan masuk ke dalam frame. Dokumen ini sama dengan Halaman web biasa. Satusatunya variasi yang dapat anda miliki adalah Link-nya, jika Halaman-Halaman itu harus saling memanggil di dalam
jendela frame.
Index.html
<html>
logo.html
<html>
menu.html
<html>
welcome.html
<html>
<head>
<title></title>
</head>
<frameset rows="25%,*"
border="0">
<frame
name="atas"
src="logo.html" />
<frameset cols="20%,*">
<frame
name="menu"
scrolling="no"
src="menu.html" />
<frame
name="isi"
src="welcome.html" />
</frameset>
</frameset>
</html>
<head>
<title></title>
</head>
<body
bgcolor="#006699">
<h2><font
color="#FFFFFF">
Cara Membuat WEB
</font></h2>
</body>
</html>
<head>
<title></title>
</head>
<body
bgcolor="#CCCCFF">
<h4>Latihan</h4>
Mencoba latihan membuat
Frame HTML
</body>
</html>
<head>
<title></title>
</head>
<body>
<h2>Selamat
Datang</h2>
<h4>Anda berada
pada
halaman
latihan Membuat
FRAME HTML</h4>
</body>
</html>
Konsep Frame
<frameset> : berfungsi untuk membagi isi jendela web browser menjadi beberapa bagian.
name
Nama dari frame untuk jalur sambung bertarget (target Tidak boleh memuat string : \ / : * ? " < > |
linking)
rows
Membuat baris frame yang akan muncul serta ukurannya
Contoh. ROWS="300,200,*"
cols
Membuat kolom frame yang akan muncul serta ukurannya
The
Column
sizes
listed
ie.
COLS="200,600,*"
frameborder
Merubah berapa ukuran tepian atau border
Angka piksel
framespacing Jarak yang memisahkan masing-masing frame-frame
Angka piksel
Contoh:
judul.html
<html>
<head></head>
<body bgcolor="red">
<font
size=7
color="blue"><center><b>3
FRAME SEDERHANA</b>
</center></font>
</body></html>
menu.html
<html>
<head></head>
<body bgcolor="yellow">
Menu :<br>
<a href="tambahan.html" taget="kiri">Di sini </a><br>
<a href="tambahan.html" taget="kanan">Di sana </a><br>
<a href="tambahan.html" target="atas">Di atas </a><br>
<a
href="http://www.geocities.com/sandra99"
target="_blank">Link saya</a><br>
<a href="http://www.prohosting.com/mia" target ="_top">Link
lain</a><br>
<a
href="http://www.geocities.com/smun14
target
="_self">Link lain lagi</a><br>
isi.html
<html>
<head></head>
<body bgcolor="blue">
<font
size=3
color="yellow">
Ini
adalah
isi
homepage saya...;)
</font>
</body></html>
<a
href="http://www.prohosting.com/sandra"
target
="_parent">Link aneh</a>
</body></html>
tambahan.html
induk.html
<html>
<html>
<head></head>
<head>
<body
<title>Pertama kali bikin frame </title>
bgcolor="green">
</head>
<font
size=5 <frameset rows="20%,80%">
color="yellow">
<frame src="judul.html" name="atas">
<b>Ini isinya cuman
<frameset cols="25%,75%">
tambahan kok</b>
<frame src="menu.html" name="kiri">
</font>
<frame src="isi.html" name="kanan">
</body></html>
</frameset>
</frameset></html>
Keterangan
Mendefinisikan Ordered List
Mendefinisikan Unored List
Mendefinisikan List Item
Mendefinisikan Definition List
Mendefinisikan Definition Term
Mendefinisikan Definition Description
start
Contoh:
List Nomor
<ol>
<li>Apel </li>
<li>Pisang</li>
<li>Mangga</li>
<li>Jambu</li>
</ol>
Unordered List <ul>
Atribut
type
Argumen
A
a
I
i
1
x
Keterangan
Daftar dengan huruf besar (A,B,C dst)
Daftar dengan huruf kecil (a,b,c, dst)
Daftar dengan bilangan romawi besar (I,II dst)
Daftar dengan bilangan romawi kecil (i,ii, dst)
Daftar dengan nomor berurut (1,2,3 dst)
X diisi dengan angka/huruf yang akan dijadikan awal daftar.
Argumen
Disc
Circle
Square
Keterangan
Simbol berupa disk
Simbol berupa lingkaran
Simbol berupa kotak
Contoh:
List type disk
<ul type="disc">
<li>Apel</li>
<li>Mangga</li>
<li>Jeruk</li>
<li>Pepaya</li>
</ul>
Bentuk
<body>
<ol>
<li>Buah</li>
<ul type="circle">
<li>Semangka</li>
<li>Jambu</li>
</ul>
<li>Bunga</li>
<ul type="disc">
<li>Melati</li>
<li>Anggrek</li>
</ul>
<li>Kendaraan</li>
<ul type="square">
<li>Mobil</li>
<li>Sepeda Motor </li>
</ul>
</ol>
</body>
</html>
Definition List
<dl><dl> Untuk menyatakan list definisi
<dt>
Istilah yang akan didefinisikan, tag tunggal tanpa penutup
<dd>
Definisi dari istilah tersebut, tag tunggal tanpa penutup
<html>
<body>
<h4>Contoh List Definisi:</h4>
<dl>
<dt>HTML</dt>
<dd>Hyper Text Markup Language, bahasa yang digunakan untuk membuat halaman
web.</dd>
<dt>Internet Explorer</dt>
<dd>Web browser bawaan dari sistem operasi Windows, digunakan untuk menampilkan
halaman web.</dd>
</dl>
</body>
</html>
Keterangan
Mendefinisikan form untuk masukan user
Mendefinisikan masukan field
Mendefinisikan textarea
Mendefinisikan label control
Mendefinisikan sebuah fieldset
Mendefinisikan caption sebuah fieldset
Mendefinisikan list (drop-down box)
Mendefinisikan option group
Mendefinisikan option pada drop-down box
Mendefinisikan button
List
: menyediakan pilihan dalam bentuk list pilihan, pilihan yang dipilih dapat lebih dari satu.
Hidden
: elemen tersembunyi memberikan kebebasan pada pengembang untuk mengirimkan data ke server
tanpa menampilkan data tersebut kepada pengguna.
TYPE=CHECKBOX
Jenis Checkbox adalah untuk membuat kotak pilihan yang bisa dipilih ataupun tidak dipilih.
<input type="checkbox" name="day" value="senin"> Senin <br>
<input type="checkbox" name="day" value="selasa"> Selasa <br>
<input type="checkbox" name="day" value="rabu"> Rabu
<input name="checkbox" type="checkbox" value="checkbox" checked>
Keterangan :
Name : nama checkbox
Type
: type masukan
Value : nilai yang dikirimkan ke server
Checked : menunjukkan bahwa otomatis pilihan tersebut dipilih. Secara default atribut tersebut unchecked (tidak
dipilih).
TYPE=RADIO
<input type="radio" name="sex" value="pria"> Pria <br>
<input type="radio" name="sex" value="wanita"> Wanita
<input name="radiobutton" type="radio" value="radiobutton">
Keterangan :
Name : nama radiobutton
Type
: type masukan
Value : nilai yang akan dikirim ke server
TYPE=SUBMIT
Adalah tombol tekan yang bila ditekan akan mengirim formulir yang bersangkutan ke server.
<input type="submit" name="submit" value="Masukkan
Form">
TYPE=RESET
Adalah tombol tekan yang akan menghapus semua data masukan.
<input type="reset" name="reset" value="Kosongkan
Form">
TYPE=HIDDEN
<input type="hidden" name="csrf_token" value="a1923">
Tag SELECT
Format:
<select name="..." [size="..."] [multiple]>
<option [value="..."] [selected]>
</select>
Dengan tag ini kita bisa membuat menu pilihan. Pengguna bisa memilih pilihan yang beragam bila attribut MULTIPLE
digunakan. Panjang daftar pilihan bisa dibatasi tayangannya dengan menggunakan Tag SIZE; Bila daftar lebih panjang
dari yang dibatasi browser akan menampilkan sroll bar. Daftar pilihan biasanya ditayangkan dalam bentuk pull down
menu. Bila Size tidak ditentukan maka yang berlaku adalah size=1.
Syntax dari tag <select> adalah mirip dengan lists (Daftar pilihan). Setiap item pilihan ditentukan oleh tag
<option>, yang merupakan tag tunggal. Yang dikurung dalam tag <select>. Bila nilainya tak ditentukan di tag
<option>. Anda bisa memilih attribute untuk untuk pilihan sebagai pilihan awal.
Dalam daftar pilihan dengan size 1 (pull down menu), satu pilihan dinyatakan sebagai pilihan awal, bila tidak ditentukan
option sebagai pilihan awal, maka urutan pilihan pertamalah yang ditentukan sebagai pilihan awal. Namun, dalam daftar
pilihan dengan size lebih besar dari 1, maka bisa dibuat <select> tanpa adanya pilihan awal.
<select name="country">
<option value="indonesia">Indonesia</option>
<option value="malaysia">Malaysia</option>
<option value="filipina">Filipina</option>
<option value="vietnam">Vietnam</option>
</select>
<select name="select">
<option value="TI">Teknologi Informasi</option>
</select>
Keterangan :
Select : tag yang menandakan sebuah list/menu
Name : nama list/menu
Option : tag yang menandakan sebuah pilihan list
Value : nilai pilihan yang akan dikirim ke server
Tag TEXTAREA
<textarea name = "..." rows = number cols = number></textarea>
Tag TEXTAREA digunakan untuk bidang (field) masukan text yang banyak dan bisa dibatasi isinya dan bisa sudah
berisi text awal, dengan menggunakan Atribute TEXTAREA sbb:
o NAME, adalah Nama simbolik dari bidang masukan text.
o ROWS, yang menentukan tinggi bidang masukan text dinyatakan dengan angka menurut jumlah huruf.
o COLS, yang menentukan lebar bidang masukan text dinyatakan dengan angka menurut jumlah huruf.
Dalam TEXTAREA bidang masukan text akan ditayangkan berikut scroll bar; sembarang jumlah text bisa dimasukkan
didalamnya.
<label for="msg">Message</label><br/>
<textarea name="msg" cols="20" rows="4"></textarea>
<fieldset>
<legend>Login</legend>
<label for="username">Username</label>
<input type="text" name="username" id="username">
<label for="password">Password</label>
<input type="text" name="password" id="password">
</fieldset>
</form>
Method adalah proses bagaimana suatu data dikirim kepada web server. Namun jika tidak diisi maka secara default akan
menggunakan metode GET. Perbedaan method GET dan POST adalah sebagai berikut :
GET
o Variabel telihat pada URL, data setiap
variabel dipisahkan dengan &.
Contoh : http://url/page.php?
get1=nilai2&get2=nilai2
o Dibatasi oleh panjang string sebanyak 2047
karakter
o Memungkinkan pengunjung langsung
memasukkan nilai variable pada form proses.
o Variabel diambil dengan
$_REQUEST[nama] atau
$_GET[nama]
</p>
</form>
POST
o Nilai variabel tersembunyi untuk pengunjung
o Lebih aman karena lebih susah untuk
dimainkan pengunjung melalui pergantian
nama variable
o Tidak dibatasi oleh panjang string
o Variabel diambil dengan
$_REQUEST[nama] atau
$_POST[nama].
Feedback Form
==================================================================
CSS
Pengenalan / Dasar CSS (Cascading Style Sheet)
Menginput Kode CSS ke Halaman HTML
Metode Inline Style, adalah cara menginput kode CSS langsung ke dalam tag HTML dengan menggunakan
atribut style.
Contoh:
<body>
<h2 style="background-color:black; color:white" >
Text ini akan bewarna putih dan background warna hitam
</h2>
</body>
Metode Internal Style Sheets, atau disebut juga Embedded Style Sheets digunakan untuk memisahkan kode
CSS dari tag HTML namun tetap dalam satu halaman HTML. Atribut style yang sebelumnya berada di dalam
tag, dikumpulkan pada pada sebuah tag <style>. Tag style ini harus berada pada bagian <head> dari halaman
HTML.
Contoh:
<head>
<title>Contoh Inline Style CSS</title>
<style type="text/css">
h2 {
background-color:black;
color:white;
}
</style>
</head>
Metode External Style Sheets, digunakan untuk mengangkat kode CSS tersebut kedalam sebuah file
tersendiri yang terpisah sepenuhnya dari halaman HTML.
Contoh:
menggunakan metode @import
menggunakan tag <link>
<head>
<head>
<title>Inline Style CSS</title>
<title>Inline Style CSS</title>
<style type="text/css">
<link
rel="stylesheet"
@import url(belajar.css);
type="text/css" href="belajar.css">
</style>
</head>
</head>
color: navy;
}
p {
Selector
Contoh:
p {font-family: calibri, helvetica, sans-serif;}
Keterangan:
- P : selector
- font-family : property
- calibri, helvetica, sans-serif : value
Selector, adalah sebuah pola (pattern) yang digunakan sebagai identitas pendefinisian suatu style, dan suatu cara untuk
mengaitkan atau menghubungkan kode CSS dengan tag HTML.
Jenis-jenis selector dasar pada CSS:
Universal selector, hanya ada 1 di dalam CSS, yaitu tanda bintang *. Selector ini bertujuan untuk mencari
semua tag yang ada.
Contoh:
* {
color: blue;
background-color: white;}
}
Element Type Selector, atau Tag Selector adalah istilah untuk selector yang nilainya merupakan tag HTML itu
sendiri. Setiap tag HTML bisa digunakan sebagai selector, dan seluruh tag tersebut akan ditangkap oleh selector
ini. Efek dari element type selector adalah dari awal tag, sampai akhir tag.
Contoh:
h1 {
text-decoration: underline;
}
p {
font-size:14px;
}
Class Selector, merupakan salah satu selector yang paling umum dan paling sering digunakan. Class Selector
akan mencari seluruh tag yang memiliki atribut class dengan nilai yang sesuai. Untuk penggunaan Class
Selector, kita harus memiliki tag HTML yang mempunyai atribut class.
Contoh:
Tag pada HTML
Tag pada CSS
<p
class=paragraf_pertama>
Ini
adalah .paragraf_pertama {
sebuah paragraf pertama</p>
color: red;
}
<h1 class=judul>Judul Artikel</h1>
.judul {
font-size:20px;
<h2 class=judul penting berwarna>Sub Judul
}
Artikel<h2>
.penting {
color:red;
font-size: 1em;
}
ID Selector, bersama-sama dengan class selector merupakan selector paling umum dan juga sering dipakai
(walau tidak sesering class selector). Penggunaan ID selector hampir sama dengan class selector, dengan
perbedaan jika pada Class Selector kita menggunakan atribut class untuk tag HTML, untuk ID selector, kita
menggunakan atribut id. Atribut id selain untuk selector CSS, juga berperan sebagai kode unik untuk masingmasing tag (terutama dipakai untuk kode JavaScript). Karena hal tersebut, id yang digunakan harus unik dan
tidak boleh sama. Dengan kata lain, id hanya bisa digunakan satu kali dalam sebuah halaman web dan
tidak boleh sama.
Contoh:
Tag pada HTML
Tag pada CSS
<p id=paragraf_pembuka> Ini adalah sebuah #paragraf_ pembuka {
paragraf pembuka</p>
color: red;
}
<h1 id=judul_utama>Judul Artikel</h1>
#judul utama {
font-size:20px
<h2 id=sub_judul>Sub Judul Artikel<h2>
}
Atribut Selector, ini digunakan untuk mencari seluruh tag yang memiliki atribut yang dituliskan. setiap atribut
selector harus berada diantara tanda kurung siku [ dan ].
Contoh:
[href] {
font-size:20px ;
}
[type="submit"] {
width:30px;
}
Eksternal style, yakni style yang dideklarasikan pada sebuah file .css, dan dipanggil melalui tag <link> atau
@import.
Property
Property CSS adalah jenis style, atau elemen apa yang akan diubah dari sebuah tag HTML. CSS memiliki puluhan
property yang dapat digunakan agar menampilkan hasil akhir yang diinginkan. Hampir semua property dalam CSS
dapat dipakai untuk seluruh selector.
Value
Value CSS adalah nilai dari property. Misalkan untuk property background-color yang digunakan untuk mengubah
warna latar belakang dari sebuah selector, value atau nilainya dapat berupa red, blue, black, atau white.
Satuan Nilai (Value) dalam CSS
Nilai absolut, adalah sebuah nilai di dalam CSS, dimana nilai tersebut tidak dipengaruhi kondisi tag induknya
(parent), dan didasarkan pada ukuran sebenarnya di media printing. Di dalam CSS, nilai absolut ini adalah:
milimeter (mm), centimeter (cm), inchi (in), point (pt), dan pica (pc).
Nilai Relatif, berbeda dengan nilai absolut, nilai relatif didalam CSS dipengaruhi oleh tag disekitarnya. CSS
mendukung banyak nilai relatif, beberapa yang kita bahas adalah: pixel (px), Em-height (em), danX-height
(ex).
Nilai persentasi, adalah sebuah nilai per seratus (%) dari suatu property yang relatif terhadap induk ( parent)
dari tag tersebut. Misalkan kita membuat sebuah defenisi CSS sebagai p {font-size: 10pt;}, dan em
{font-size: 120%;}. Maka jika terdapat tag <em> didalam tag <p>, maka ukuran font dari tag <em>
akan menjadi 120% dari 10pt, atau sekitar 12pt.
Contoh:
<head>
<title>Contoh Perbandingan Ukuran dari font-size</title>
<style type="text/css">
body
{ font-size:14pt; }
p.satu { font-size:8mm; }
p.dua
{ font-size:0.35in; }
p.tiga { font-size:2.2pc; }
p.empat { font-size:20px; }
p.lima { font-size:1.8em }
p.enam { font-size:3ex; }
p.tujuh { font-size:190%; }
</style>
</head>
<body>
<p>Kalimat ini akan berukuran 14 point</p>
<p class="satu">Kalimat ini akan berukuran 8 milimeter</p>
<p class="dua">Kalimat ini akan berukuran 0,35 inchi</p>
<p class="tiga">Kalimat ini akan berukuran 2,2 pica</p>
<p class="empat">Kalimat ini akan berukuran 20 pixel</p>
<p class="lima">Kalimat ini akan berukuran 1,8 em</p>
<p class="enam">Kalimat ini akan berukuran 3 ex</p>
<p class="tujuh">Kalimat ini akan berukuran 190%</p>
</body>
Keterangan:
Jika diperhatikan lagi, pembuatan sebuah selector body {font-size:14pt;} pada bagian awal definisi CSS, akan
menurunkan (inherit) ukuran font ini ke seluruh tag <p> yang berada di dalam tag <body>, namun pada masing-masing
tag <p>, ditambahkan property HTML class, sehingga ukuran font akan ditimpa (override) oleh nilai lainnya.
Khusus untuk class=lima, class=enam, dan class=tujuh, menggunakan nilai relatif em, ex,dan %, sehingga nilainya
bergantung dengan nilai induknya (parent), yakni body {font-size:14pt;}.
Format #RRGGBB
Format penulisan warna #RRGGBB adalah yang paling populer digunakan untuk CSS. Dimana RRadalah nilai untuk
warna merah, GG untuk hijau, dan BB untuk warna biru. Masing-masing nilai ini berisi angka 00 sampai dengan FF.
Contoh: #FF0000
Format #RGB
Format penulisan 3 digit ini merupakan penulisan singkat dari 6 digit. Contohnya #RGB merupakan penulisan singkat
dari #RRGGBB, #F0F adalah singkatan dari #FF00FF.
Penulisan Desimal
CSS juga menyediakan penulisan warna menggunakan angka desimal. Format penulisannya adalah: rgb(0, 160, 255)
atau rgb(0%, 63%, 100%), dimana urutan warna adalah merah, hijau, dan biru. Menggunakan format pertama, 255
sama dengan 100%. Jika kita menuliskan nilai diluar dari angka yang seharusnya, yakni 0 255 atau 0% 100% maka
CSS secara otomatis akan menyamakannya dengan nilai yang terdekat.
Kata Warna (Keyword)
CSS juga mendukung 17 kata warna dalam bahasa inggris, yakni: aqua, black, blue, fuchsia, gray, green, lime, maroon,
navy, olive, orange, purple, red, silver, teal, white, dan yellow. Kata-kata ini berasal dari warna dasar VGA pada
Windows dan dikenal juga dengan istilah classic internet color.
Tabel Kata Warna dalam CSS
Keyword Warna Nilai RGB
aqua
#00ffff
black
#000000
blue
#0000ff
fuchsia
#ff00ff
gray
#808080
green
#008000
lime
#00ff00
maroon
#800000
navy
#000080
olive
#808000
orange
#ffa500
purple
#800080
red
#ff0000
silver
#c0c0c0
teal
#008080
white
#ffffff
yellow
#ffff00
Nilai property: Transparent
CSS menyediakan keyword transparent sebagai nilai. Dengan memberikan nilai transparan, sebuah tag akan
melewatkan warna dari tag dibelakangnya.
Contoh:
p.lima{color:transparent;}
CSS Lanjutan
Pengertian dan Cara Penulisan Kode Warna RGBA, HSL, dan HSLA
RGBA
RGBA adalah singkatan dari Red Green Blue Alpha. Tambahan kata Alpha disini merujuk kepada alpha channel.
Alpha channel adalah sebuah metode untuk menentukan tingkat transparan sebuah warna. Nilai alpha 0 akan membuat
sebuah warna transparan (tembus pandang), dan nilai alpha 1 akan membuat warna pekat dan tidak akan melewatkan
objek lain dibelakangnya (ini merupakan nilai default). Jika ingin membuat nilai alpha berada diantara 0 dan 1, dengan
menggunakan penulisan desimal seperti 0.5, 0.6, dan 0.9.
Contoh:
h2 {color: rgba(255,0,0,0.3); background-color: rgba(0,0,255,0.6);}
HSL
HSL adalah singkatan dari Hue, Saturation, dan Lightness (atau sering ditulis juga dengan Luminance).
Contoh untuk membuat wana merah:
color: hsl(0, 100%, 50%);
Nilai pertama yakni Hue merupakan derajat warna dengan nilai 0 sampai 360. Nilai ini didapat dari lingkaran warna
(color wheel) yang tersusun dari warna pelangi. Setiap warna berada dalam jarak sekitar 51 derajat.
Nilai kedua dari kode warna HSL adalah Saturation. Saturation menyatakan seberapa murni sebuah warna. Nilai dari
Saturation adalah persen dari 0% sampai dengan 100%, dimana nilai 0% akan membuat warna menjadi pudar dan
menghasilkan warna abu-abu (terlepas dari apapun warna Hue yang dipilih). Dan nilai Saturation 100% adalah warna
murni.
Nilai ketiga dari HSL adalah Lightness atau kecerahan dari warna. Sama seperti Saturation, nilai Lightness berada
dalam angka 0% sampai dengan 100%. Nilai 0% akan membuat warna apapun menjadi hitam, dan nilai 100% akan
membuat warna apapun menjadi putih. Untuk mendapatkan warna normal angkanya berada di nilai 50%.
HSLA
Sama seperti kode warna RGB dan RGBA, huruf A dari HSLA juga singkatan dari Alpha Channel. Nilai yang
digunakan juga sama, yakni nilai 1 untuk warna solid, dan nilai 0 untuk warna transparan.
Contoh:
h2 {color: hsla(240,100%,60%,0.8);}
background: #ff0000;
color: #ff0000;
background: #ffff00;}
input:disabled {
background: #dddddd;}
HTML
<form action="">
Name: <input type="text"
value="Mickey"><br>
Pass: <input type="pass"
name="pass"
value="psw"
disabled></form>
Pseudo Element Selector
Pseudo Element Selector adalah elemen yang tidak didefinisikan pada HTML namun bisa diakses melalui CSS.
Contoh:
p.intro::first-letter { h1::before {
p::first-letter {
color: #ff0000;
content: url(smiley.gif);}
color: #ff0000;}
font-size:200%;}
p::first-line {
color: #0000ff;}
Jenis-jenis Pseudo-Element:
o ::before
: Digunakan untuk menambah suatu content sebelum element tertentu.
o ::after
: Digunakan untuk menambah suatu content setelah element tertentu.
o ::first-letter
: Digunakan untuk memberi style pada huruf pertama pada selector tertentu.
o ::first-line
: Digunakan untuk memberi style pada baris pertama pada selector tertentu.
Child selector, hanya akan mencari seluruh tag <h2> yang merupakan turunan langsung dari tag <div>.
Contoh:
ul.nav > li {color: green;}
Maksud dari selector tersebut adalah mencari seluruh tag <li> yang merupakan child dari tag <ulclass=nav>.
Karena selector tersebut hanya mencari tag <li> yang merupakan anak langsung dari tag <ul>, maka nested
list tidak akan berefek.
Animation Properties
Menentukan animasi
Menentukan nama untuk animasi keyframes @
Menentukan berapa detik atau milidetik animasi diperlukan untuk menyelesaikan satu siklus
Menentukan kurva kecepatan animasi
Menentukan kapan animasi akan mulai
Menentukan jumlah kali animasi harus dimainkan
Menentukan apakah atau tidak animasi harus bermain secara terbalik pada siklus alternative
Menentukan apakah animasi sedang berjalan atau dijeda
Background Properties
Mengatur semua properti latar belakang dalam satu deklarasi
background-attachment
Backround-color
background-image
background-position
background-repeat
background-clip
background-origin
background-size
border
border-bottom
border-bottom-color
border-bottom-style
border-bottom-width
border-color
border-left
border-left-color
border-left-style
border-left-width
border-right
border-right-color
border-right-style
border-right-width
border-style
border-top
border-top-color
border-top-style
border-top-width
border-width
outline
outline-color
outline-style
outline-width
border-bottom-left-radius
border-bottom-rightradius
border-image
border-image-outset
border-image-repeat
border-image-slice
border-image-source
border-image-width
border-radius
border-top-left-radius
border-top-right-radius
box-shadow
overflow-x
overflow-y
overflow-style
rotation
rotation-point
color-profile
opacity
rendering-intent
bookmark-label
bookmark-level
bookmark-target
float-offset
hyphenate-after
hyphenate-before
Mengatur apakah gambar latar belakang tetap atau gulungan dengan sisa halaman
Mengatur warna latar belakang dari elemen
Mengatur gambar latar belakang untuk elemen
Mengatur posisi awal dari gambar latar belakang
Mengatur bagaimana gambar latar belakang akan diulangi
Menentukan daerah lukisan latar belakang
Menentukan daerah posisi gambar latar belakang
Menentukan ukuran gambar latar belakang
Border and Outline Properties
Mengatur semua properti perbatasan dalam satu deklarasi
Mengatur semua properti perbatasan bawah dalam satu deklarasi
Mengatur warna batas bawah
Mengatur gaya perbatasan bawah
Mengatur lebar perbatasan bawah
Mengatur warna batas
Mengatur semua properti perbatasan kiri dalam satu deklarasi
Mengatur warna batas kiri
Mengatur gaya perbatasan kiri
Mengatur lebar batas kiri
Mengatur semua properti perbatasan kanan dalam satu deklarasi
Mengatur warna batas kanan
Mengatur gaya perbatasan kanan
Mengatur lebar batas kanan
Mengatur gaya dari empat perbatasan
Mengatur semua properti perbatasan atas dalam satu deklarasi
Mengatur warna batas Atas
Mengatur gaya perbatasan Atas
Mengatur lebar batas Atas
Mengatur lebar dari empat perbatasan
Mengatur semua properti outline dalam satu deklarasi
Mengatur warna garis besar
Mengatur gaya garis besar
Mengatur lebar garis besar
Mendefinisikan bentuk perbatasan sudut kiri bawah
Mendefinisikan bentuk perbatasan sudut kanan bawah
Properti singkatan untuk menetapkan semua perbatasan-image
Menentukan jumlah dimana bidang gambar perbatasan melampaui kotak perbatasan
Menentukan apakah gambar-perbatasan harus diulang, bulat atau diregangkan
Menentukan offset batin dari perbatasan gambar
Menentukan gambar yang akan digunakan sebagai perbatasan
Menentukan lebar perbatasan gambar
Properti singkatan untuk menetapkan semua empat perbatasan-*-radius properti
Mendefinisikan bentuk perbatasan pojok kiri
Mendefinisikan bentuk perbatasan sudut kanan atas
Atase satu atau lebih drop-bayangan ke kotak
Box Properties
Menentukan apakah atau tidak untuk klip kiri / kanan tepi konten, jika meluap area konten elemen
Menentukan apakah atau tidak untuk klip bagian atas / bawah tepi konten, jika meluap area konten elemen
Menentukan metode bergulir disukai untuk elemen yang melimpah
Memutar elemen di sekitar titik yang diberikan ditentukan oleh properti rotasi-titik
Mendefinisikan titik sebagai offset dari tepi perbatasan kiri atas
Color Properties
Memungkinkan spesifikasi dari profil warna sumber lain selain default
Menentukan tingkat opacity untuk elemen
Memungkinkan spesifikasi maksud warna profil render selain default
Content for Paged Media Properties
Menentukan label bookmark
Menentukan tingkat bookmark
Menentukan target dari link bookmark
Dorong elemen melayang ke arah berlawanan dari mana mereka telah melayang dengan float
Menentukan jumlah minimum karakter dalam kata ditulis dgn tanda penghubung setelah karakter
hyphenation
Menentukan jumlah minimum karakter dalam kata ditulis dgn tanda penghubung sebelum karakter
hyphenate-character
hyphenate-lines
hyphenate-resource
hyphens
image-resolution
marks
string-set
height
max-height
max-width
min-height
min-width
width
box-align
box-direction
box-flex
box-flex-group
box-lines
box-ordinal-group
box-orient
box-pack
font
font-family
font-size
font-style
font-variant
font-weight
@font-face
font-size-adjust
font-stretch
content
counter-increment
counter-reset
quotes
crop
move-to
page-policy
grid-columns
grid-rows
target
target-name
target-new
target-position
alignment-adjust
alignment-baseline
baseline-shift
dominant-baseline
drop-initial-after-adjust
drop-initial-after-align
drop-initial-before-adjust
drop-initial-before-align
hyphenation
Menentukan string yang akan ditampilkan ketika hyphenate-break terjadi
Menunjukkan jumlah maksimum baris ditulis dgn tanda penghubung berturut-turut dalam suatu elemen
Menentukan suatu daftar comma-separated sumber daya eksternal yang dapat membantu browser
menentukan titik hyphenation
Mengatur cara untuk membagi kata-kata untuk meningkatkan tata letak paragraf
Menentukan resolusi gambar yang benar
Menambahkan tanaman dan / atau tanda silang pada dokumen
Dimension Properties
Mengatur ketinggian elemen
Mengatur ketinggian maksimum elemen
Mengatur lebar maksimum elemen
Mengatur ketinggian minimal elemen
Mengatur lebar minimum elemen
Mengatur lebar elemen
Flexible Box Properties
Menentukan bagaimana untuk menyelaraskan elemen anak dari kotak
Menentukan arah mana anak-anak kotak ditampilkan
Menentukan apakah anak-anak kotak fleksibel atau tidak fleksibel dalam ukuran
Memberikan elemen fleksibel untuk melenturkan kelompok
Menentukan apakah kolom akan pergi ke baris baru setiap kali kehabisan ruang di kotak orangtua
Menentukan urutan tampilan elemen anak dari kotak
Menentukan apakah anak-anak dari kotak harus ditata horizontal atau vertikal
Menentukan posisi horizontal dalam kotak horisontal dan posisi vertikal dalam kotak vertikal
Font Properties
Mengatur semua properti font dalam satu deklarasi
Menentukan Tampilan font untuk teks
Menentukan ukuran font teks
Menentukan gaya font untuk teks
Menentukan apakah atau tidak teks harus ditampilkan dalam huruf kecil.
Menentukan berat font
Sebuah aturan yang memungkinkan situs web untuk men-download dan menggunakan font selain "webaman" font
Mempertahankan pembacaan teks saat fallback font yang terjadi
Memilih wajah, normal kental, atau diperluas dari keluarga font
Generated Content Properties
Digunakan dengan: sebelum dan: setelah pseudo-elemen, untuk memasukkan konten yang dihasilkan
Penambahan satu atau lebih counter
Menciptakan atau mengatur ulang satu atau lebih counter
Mengatur jenis tanda kutip untuk kutipan tertanam
Memungkinkan elemen diganti menjadi hanya area persegi obyek, bukan seluruh objek
Penyebab elemen yang akan dihapus dari aliran dan dimasukkan kembali pada titik kemudian dalam
dokumen
Menentukan halaman yang berbasis terjadinya suatu unsur tertentu diterapkan ke counter atau nilai string
Grid Properties
Menentukan lebar setiap kolom dalam kotak
Menentukan tinggi setiap kolom dalam kotak
Hyperlink Properties
Properti singkatan untuk menetapkan target-nama, target-baru, dan target-posisi properti
Menentukan di mana untuk membuka link (target tujuan)
Menentukan apakah link tujuan baru harus terbuka di jendela baru atau di tab baru dari jendela yang ada
Menentukan di mana link tujuan baru harus ditempatkan
Linebox Properties
Memungkinkan penyelarasan lebih tepat dari unsur-unsur
Menentukan bagaimana elemen inline-tingkat sejalan sehubungan dengan induknya
Memungkinkan reposisi relatif dominan-awal sampai dominan-dasar
Menentukan-dasar skala-tabel
Mengatur titik alignment drop awal untuk titik koneksi utama
Set yang keselarasan baris dalam kotak garis awal digunakan pada titik sambungan primer dengan kotak
huruf awal
Mengatur titik alignment drop awal untuk titik sambungan sekunder
Set yang keselarasan baris dalam kotak garis awal digunakan pada titik sambungan sekunder dengan kotak
surat awal
drop-initial-size
drop-initial-value
inline-box-align
line-stacking
line-stacking-ruby
line-stacking-shift
line-stacking-strategy
text-height
list-style
list-style-image
list-style-position
list-style-type
margin
margin-bottom
margin-left
margin-right
margin-top
marquee-direction
marquee-play-count
marquee-speed
marquee-style
column-count
column-fill
column-gap
column-rule
column-rule-color
column-rule-style
column-rule-width
column-span
column-width
columns
padding
padding-bottom
padding-left
padding-right
padding-top
fit
fit-position
image-orientation
page
size
bottom
clear
clip
cursor
display
float
left
overflow
position
right
top
visibility
z-index
orphans
page-break-after
page-break-before
page-break-inside
widows
ruby-align
ruby-overhang
ruby-position
ruby-span
mark
mark-after
mark-before
phonemes
rest
rest-after
rest-before
voice-balance
voice-duration
voice-pitch
voice-pitch-range
voice-rate
voice-stress
voice-volume
border-collapse
border-spacing
caption-side
empty-cells
table-layout
color
direction
letter-spacing
line-height
text-align
text-decoration
text-indent
text-transform
unicode-bidi
vertical-align
white-space
word-spacing
hanging-punctuation
punctuation-trim
text-align-last
text-justify
text-outline
text-overflow
text-shadow
text-wrap
word-break
word-wrap
transform
transform-origin
transform-style
perspective
Print Properties
Mengatur jumlah minimum baris yang harus ditinggalkan di bagian bawah halaman saat istirahat halaman
terjadi di dalam elemen
Mengatur perilaku halaman pemecah setelah elemen
Mengatur perilaku halaman-breaking sebelum elemen
Mengatur perilaku halaman-breaking di dalam elemen
Mengatur perilaku halaman-breaking di dalam elemen
Ruby Properties
Mengontrol perataan teks dari teks ruby dan isi basis ruby relatif terhadap satu sama lain
Menentukan apakah, dan di sisi mana, ruby teks diperbolehkan untuk sebagian overhang teks yang
berdekatan di samping basis sendiri, ketika teks ruby lebih lebar dari dasar ruby
Mengontrol posisi teks ruby sehubungan dengan alasnya
Mengontrol perilaku mencakup elemen anotasi
Speech Properties
Properti singkatan untuk menetapkan tanda-tanda sebelum dan setelah sifatMemungkinkan spidol nama harus terpasang ke stream audio
Memungkinkan spidol nama harus terpasang ke stream audio
Menentukan pengucapan fonetik untuk teks yang dikandung oleh elemen terkait
Properti singkatan untuk menetapkan sisa-sisa sebelum dan setelah sifatMenentukan istirahat atau batas prosodi untuk diamati setelah berbicara konten sebuah elemen
Menentukan istirahat atau batas prosodi untuk diamati sebelum berbicara konten sebuah elemen
Menentukan keseimbangan antara saluran kiri dan kanan
Menentukan berapa lama harus dilakukan untuk membuat konten elemen yang dipilih
Menentukan lapangan rata-rata (frekuensi) dari suara yang berbicara
Menentukan variasi dalam lapangan rata-rata
Mengontrol kecepatan berbicara
Menunjukkan kekuatan penekanan yang akan diterapkan
Mengacu pada amplitudo gelombang output oleh synthesises pidato
Table Properties
Menentukan apakah atau tidak perbatasan tabel harus runtuh
Menentukan jarak antara batas sel yang berdekatan
Menentukan penempatan keterangan tabel
Menentukan apakah atau tidak untuk menampilkan perbatasan dan latar belakang pada sel kosong dalam
tabel
Mengatur tata letak algoritma yang akan digunakan untuk tabel
Text Properties
Mengatur warna teks
Menentukan arah teks / tulisan arah
Meningkat atau menurun ruang antara karakter pada teks
Mengatur tinggi baris
Menentukan alignment horizontal teks
Menentukan dekorasi ditambahkan ke teks
Menentukan indentasi dari baris pertama dalam blok teksMengontrol kapitalisasi teks
Mengatur alignment vertikal dari elemen
Menentukan bagaimana putih-ruang di dalam elemen ditangani
Meningkat atau menurun ruang antara kata-kata dalam teks
Menentukan apakah karakter tanda baca dapat ditempatkan di luar kotak garis
Menentukan apakah karakter tanda baca harus dipangkas
Menjelaskan bagaimana baris terakhir blok atau baris tepat sebelum istirahat garis paksa sejajar ketika textalign adalah "membenarkan"
Menentukan metode pembenaran digunakan ketika text-align adalah "membenarkan"
Menentukan garis teks
Menentukan apa yang harus terjadi ketika teks melimpahi mengandung unsur
Menambahkan bayangan untuk teks
Menentukan aturan melanggar garis untuk teks
Menentukan aturan baris melanggar untuk non-CJK script
Memungkinkan panjang, kata-kata bisa dipecahkan untuk dilanggar dan bungkus ke baris berikutnya
2D/3D Transform Properties
Menerapkan transformasi 2D atau 3D untuk elemen
Memungkinkan Anda untuk mengubah posisi pada elemen berubah
Menentukan bagaimana bersarang elemen tersebut diberikan di ruang 3D
Menentukan perspektif tentang bagaimana unsur-unsur 3D dipandang
perspective-origin
backface-visibility
transition
transition-property
transition-duration
transition-timing-function
transition-delay
appearance
box-sizing
icon
nav-down
nav-index
nav-left
nav-right
nav-up
outline-offset
resize
Keterangan
Alamat gambar yang sudah di upload
Gambar diulang dalam halaman
Gambar diulang dalam sumbu y
Gambar diulang dalam sumbu x
Gambar tidak diulang hanya muncul 1 gambar
Keterangan
Menampilkan text asli
Menampilkan Text bergaris bawah
Menampilkan text bergaris atas
Menampilkan text tercoret
Menampilkan text berkedip
Menampilkan text huruf besar
Text rata kiri
Text rata kanan
Text rata tengah
Text rata kanan kiri
Keterangan
Garis melemgkung disemua sisi dengan ukuran 10px
Garis melengkung pada sisi atas dan kiri dengan ukuran berbeda
Garis melengkung pada sisi atas dan kanan dengan ukuran berbeda
Garis melengkung pada sisi bawah dan kanan dengan ukuran berbeda
Garis melengkung pada sisi bawah dan kiri dengan ukuran berbeda
Garis melengkung pada sisi bawah dan kiri dengan ukuran sama
Tipografi berbicara tentang kemudahan membaca teks (readability) dan kemudahan mengenali setiap huruf
dan kata (legibility). Tipografi menghidupkan teks dalam sebuah tulisan. Tipografi membuat teks menjadi
menarik, sehingga pembaca penasaran dan ingin membaca teks.
Typeface
Typeface merupakan karakter-karakter yang dirancang secara khusus untuk digunakan bersama-sama. Contoh
dari typeface: Times New Roman, Arial, Helvetica, Courier New, dan Calibri. Typeface juga
mencakup ketebalan, kemiringan, lebar, dan pembuat dari typeface tersebut. Pemilihan typeface pada sebuah
teks akan sangat berpengaruh terhadap mood pembaca.
Font
Font (dalam konteks tipografi web dan tipografi digital) berbicara mengenai file yang menyimpan typeface.
Font hanyalah medium yang digunakan oleh komputer untuk menampilkan typeface. Sebuah font dapat terdiri
dari banyak typeface. Misalnya, font Helvetica Nueue dapat saja memiliki typeface Hevetica Nueue,
Helvetica Nueue Bold, Helvetica Nueue Italic, Helvetica Nueue Condensed, dst.
Jenis Format Font Yang Bisa Digunakan Untuk Web Browser
o EOT (Embedded Open Type), format font yang hanya didukung oleh Internet Explorer, dan relatif
jarang digunakan.
o TTF (True Type) and OTF (Open Type), kedua format font ini merupakan format font yang paling
banyak digunakan.
o WOFF (Web Open Font Format), merupakan jenis format paling baru dan didesain secara khusus
untuk keperluan web. WOFF pada dasarnya adalah versi kompresi dari format TTF dan OTF. Web
browser dalam Android dan IE 8 kebawah tidak akan bisa mengaksesnya.
o SVG (Scalable Vector Graphic), bukan merupakan format khusus untuk font, melainkan format untuk
menyimpan gambar vector. Tidak didukung oleh IE dan Firefox. Hanya untuk iOS Safari versi 4.1 atau
sebelumnya.
Klasifikasi Huruf
o serif, jenis font yang memiliki kaki pada setiap hurufnya. Contoh: Times New Roman dan Georgia.
o sans-serif, jenis font yang tidak memiliki kaki pada setiap ujung karakternya. Contoh: Arial,
Verdana, Trebuchet MS, Helvetica, dan Calibri.
o monospace, tipe font yang lebar setiap karakternya sama panjangnya. Contoh: Courier, Courier New,
dan Andale Mono.
o cursive, jenis font yang meniru tulisan tangan atau kaligrafi. Contoh: Comic Sans.
o fantasy adalah font yang bersifat visual dengan karakter font khusus seperti font disney, matrix, dll.
Font Properties
o Font Family
o Font Size
o Font Style
o Font Variant
Layout
Unordered List
o Mengubah Tampilan Unordered List
Ordered List
o Mengubah Tampilan Ordered List
Posisi Teks List (Ordered dan Unordered)
Penggabungan Properti List
Definition List
Nested List
List
Box Model
o Properti Height dan Width
o Properti Margin dan Padding
Border
Penyusunan Elemen
o Penampungan Elemen
o Floating Element
o Pembangunan Layout Web Dasar
o Clear Fix
Grid
Pembuatan Grid
Background
o Font Weight
o Line Height
o Penulisan Singkat Properti Font
Text Properties
o Text Align
o Text Decoration
o Text Indent
o Text Shadow
o Text Transform
o Letter Spacing dan Word Spacing
Web Safe Font
Web Font
Elemen Navigasi
Menu Vertikal Menggunakan List
Menu Horizontal Menggunakan List
Menu Horizontal dengan Display:Inline
Menu Horizontal dengan Float
Multimedia
Menambahkan Gambar
o Mengubah Ukuran Gambar
o Perubahan Posisi Gambar
Menambahkan Suara (Audio)
o Sumber Suara Tambahan
Menambahkan Video
Elemen Figure dan Caption
Tabel
Form
Pembuatan Tabel
o Header dari Tabel
o Pembatas (Border) Tabel
o Menggabungkan Beberapa Sel
Struktur Tabel
o Table Caption
o Table Head, Body, dan Foot
Inisialisasi Form
Elemen Masukan Form
o Elemen Masukan Teks: TextField dan TextArea
o Elemen Pemilihan: Radio Button, Checkbox, dan Dropdown
o Elemen Tersembunyi
Tombol pada Form
o Tombol Pengiriman
o Tombol Penghapus Input
Organisasi Elemen Form
o Label
o Fieldset
o Legend
Validasi Masukan pada Form
==================================================================
JAVASCRIPT
Java script:
Penulisan Pada Tag
Penulisan Dengan Tag <Script>
Tipe Data
Variabel
PHP
Pengenalan PHP
Tahukah Anda, PHP itu.....
1. Merupakan singkatan recursive dari PHP : Hypertext Prepocessor
2. Pertama kali dibuat oleh Rasmus Lerdorf pada tahun 1994.
3. Harus ditulis di antara tag :
- <? dan ?>
- <?php dan ?>
- <script language=php> dan </script>
- <% dan %>
4. Setiap satu statement (perintah) biasanya diakhiri dengan titik-koma (;)
5. CASE SENSITIVE untuk nama identifier yang dibuat oleh user (berupa variable, konstanta, fungsi dll), namun
TIDAK CASE SENSITIVE untuk identifier built-in dari PHP. Jadi :
- $nama $Nama $NAMA
- hitungLuas() HitungLuas()
6.
- echo = ECHO
- while = WHILE
Mudah dipelajari.
2.
Menampilkan variable
<?php
$string_ku = "Hello.. Nama saya: ";
echo $string_ku;
?>
Berikut ini contoh menampilkan gabungan suatu nilai dari variabel yang berupa string.
<?php
$string_ku = "Hello. Nama saya: ";
$baris_baru = "<br>";
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";
?>
NB : Untuk menggabungkan beberapa string menjadi satu digunakan operator dot (.)
define("nama_konstanta",nilai_konstanta);
NB : kata kunci const hanya dapat digunakan pada top-level scope, yakni harus dalam lingkungan global PHP. Sehingga
kita tidak bisa menggunakan const di dalam fungsi, loop, atau kondisi if. Jika butuh membuat konstanta di dalam sebuah
fungsi, maka harus menggunakan define.
Aturan penulisan Konstanta
- Konstanta php bersifat case sensitif
- Nama konstanta harus diawali dengan huruf atau underscore (_)
- Nama konstanta hanya boleh dituliskan dengan alpha numeric a-z, A-Z, 0-9 dan underscore
- Nama konstanta yang terdiri lebih dari satu kata, dapat dipisahkan dengan underscore (tidak boleh menggunakan
spasi)
- Nilai konstanta php tidak dapat diubah
- Konstanta hanya dapat berisi tipe data tertentu, yakni: boolean, integer, float dan string
contoh penulisan konstanta dalam PHP:
<?php
const situs = "www.google.com";
define("NAMA_ADMIN", "andre");
const _CITA2 = "Programmer Web";
define("GaJi", 5000000);
echo
echo
echo
echo
?>
Boolean
Tipe data boolean ini hanya memiliki 2 nilai, yaitu true (benar) dan false (salah).
Konversi tipe data lain menjadi boolean
- Integer 0, dianggap sebagai false
- Float 0.0, dianggap sebagai false
- String kosong () dan string 0 dianggap sebagai false
- Array tanpa elemen, dianggap sebagai false
- Objek dengan tanpa nilai dan fungsi, dianggap sebagai false
- Nilai null, dianggap sebagai false
Selain 6 kondisi diatas, sebuah variabel akan dikonversi menjadi true.
contoh penulisan tipe data boolean:
<?php
$benar=true;
$salah=false;
echo "benar = $benar, salah = $salah";
// hasil output: benar = 1, salah =
?>
Integer
Tipe data integer adalah tipe data yang berupa angka bulat. Nilai integer dapat bernilai positif (+) maupun negatif (-).
Jika tidak diberi tanda, maka diasumsikan nilai tersebut adalah positif.
contoh penulisan bilangan integer dalam PHP:
<?php
$umur=21;
$harga=15000;
$rugi=-500000;
echo $umur; //21
echo "<br />";
Floating-point
Tipe data Float (disebut juga tipe data floating point, atau real number) adalah tipe data angka yang memiliki bagian
desimal di akhir angka, atau memiliki floating point (floating point adalah istilah dalam bahasa inggris untuk menyebut
tanda titik yang menandakan bilangan desimal).
Penulisan Tipe Data Float
PHP mendukung 2 cara penulisan tipe data float, yang pertama yaitu penulisan desimal sehari-hari, seperti 0.17 atau
9.47 dan yang kedua berupa penulisan format scientific notation, seperti 0.314E1, atau 12.0E-3. Penggunaan scientific
notation digunakan untuk menyederhanakan penulisan, 0.314E1 adalah sama dengan 0.314*10^1 atau 3.14, dan 12.0E3 sama dengan 12.0*10^(-3), atau 0.012.
contoh penulisan bilangan float dalam PHP:
<?php
$angka_float1= 0.78;
$angka_float2= 14.99;
$angka_scientific1=0.314E1;
$angka_scientific2=0.3365E-3;
echo
echo
echo
echo
echo
echo
echo
?>
$angka_float1; // 0.78
"<br />";
$angka_float2; //14.99
"<br />";
$angka_scientific1; //3.14
"<br />";
$angka_scientific2; //0.0003365
String
Tipe data string adalah tipe data yang berupa kumpulan dari beberapa karakter. PHP menyediakan 4 cara penulisan tipe
data string, yakni Single Quoted, Double Quoted, Heredoc, dan Nowdoc.
Penulisan Tipe Data String dengan Single Quoted (Tanda Petik Satu)
Untuk string yang didalamnya juga terdapat tanda petik satu, kita harus mendahuluinya dengan karakter backslash (\)
agar tidak dianggap sebagai penutup string. Dan jika di dalam string anda ingin menulis tanda backslahs, kita harus
menulisnya dengan 2 kali (\\).
contoh penulisan tipe data string menggunakan metode single quoted:
<?php
$string1='Ini adalah string sederhana';
$string2='Ini adalah string
yang bisa memiliki beberapa
baris';
$string3='Dia berkata: "I\'ll be back"';
$string4='Anda telah berhasil menghapus C:\\xampp\\htdoc';
$string5='Kalimat ini tidak akan pindah ke: \n baris baru';
$string6='Variabel juga tidak otomatis ditampilkan $string1 dan $string3';
echo
echo
echo
echo
echo
echo
?>
$string1;
$string2;
$string3;
$string4;
$string5;
$string6;
echo
echo
echo
echo
echo
"<br>";
"<br>";
"<br>";
"<br>";
"<br>";
Penulisan Tipe Data String dengan Double Quoted (Tanda Petik Dua)
Dengan double quoted, kita bisa menulis karakter khusus seperti carriage return (\n), dan karakter tab (\t) dan diproses
dalam PHP. Metode double quoted akan memproses setiap variabel (ditandai dengan tanda $ didepan kata), dan
menampilkan nilai dari variabel tersebut.
Di karenakan metode double quoted melakukan pemrosesan terlebih dahulu, maka untuk menampilkan karakter khusus
seperti tanda petik (karakter ),tanda dollar (karakter $) dan tanda-tanda khusus lainnya, kita harus menggunakan
tanda backslash (karakter \).
Berikut adalah tabel karakter khusus untuk double quoted string:
Cara Penulisan String Karakter Yang Ditampilkan
\"
Karakter Tanda petik dua
\n
Karakter Newline
\r
Karakter Carriage return
\t
Karakter Tab
\\
Karakter Backslash
\$
Karakter Dollar Sign
\{
Karakter Pembuka Kurung Kurawal
\}
Karakter Penutup Kurung Kurawal
\[
Karakter Pembuka Kurung Siku
\]
Karakter Penutup Kurung Kurawal
\0 sampai \777
Karakter ASCII menggunakan nilai oktal
\x0 sampai \xFF
Karakter ASCII menggunakan nilai heksadesimal
$string1;
$string2;
$string3;
$string4;
$string5;
$string6;
echo
echo
echo
echo
echo
"<br
"<br
"<br
"<br
"<br
\>";
\>";
\>";
\>";
\>";
Array
Array adalah sebuah tipe data bentukan yang terdiri dari kumpulan tipe data lainnya. Menggunakan array akan
memudahkan dalam membuat kelompok data, serta menghemat penulisan dan penggunaan variabel.
Object
Tipe Data ini adalah tipe data baru pada PHP yang dapat digunakan untuk membangun suatu program web yang
berbasiskan object oriented. Isi dari Tipe Data ini bisa berupa Fungsi dan Variabel dan bisa terdiri dari beberapa
element.
Null
NULL adalah Tipe Data yang tidak memuat apapun. Setiap Variabel yang diset menjadi Tipe Data NULL ini akan
menjadikan Variabel tersebut kosong, seperti dalam penggunaan fungsi unset(). Cara untuk menset Variabel menjadi
NULL adalah dengan memasukan nilai NULL pada variabel yang dimaksud.
Contoh:
<?php
# Nilai awal $foo adalah 10
$foo = 10;
# $foo akan menjadi NULL
$foo = NULL;
?>
Contoh : operasi: 5+2. Angka 5 dan 2 adalah operand, sedangkan tanda tambah (karakter +) adalah operator.
Operator unary, adalah operator yang hanya memiliki 1 operand, contohnya karakter (tanda minus). Tanda minus
digunakan membuat sebuah angka menjadi negatif, contohnya: -5, atau karakter + untuk menegaskan nilai positif,
contohnya: +5.
Operator binary, adalah operator yang memiliki 2 operand. Operator jenis ini adalah yang paling banyak digunakan,
misalkan 52, atau 10/3.
Operator Ternary, adalah operator yang memiliki 3 operand. Didalam PHP hanya dikenal 1 operator ternary, yaitu
operator kondisi (? :).
(expr1) ? (expr2) : (expr3)
Cara penggunaan ternary operator adalah membandingkan expr1 dan menghasilkan expr2 jika benar, atau menghasilkan
expr3 jika salah.
Contoh:
$nilai = 85;
echo $nilai > 70 ? 'Benar' : 'Salah'; //hasil Benar
Operator
Clone New
[] Array()
++ ~ (int) (float) (string) (array) (object) @
instanceof
!
* / %
Keterangan
Pembuatan object
Pembuatan array
Penambahan / pengurangan dan Casting type data
Testing type data
Logika
Aritmatika
Kiri
Kiri
Non-associative
Non-associative
Kiri
Kiri
Kiri
Kiri
Kiri
Kiri
Kanan
Kiri
Kiri
Kiri
Kiri
+ .
<< >>
< <= > >=
== != === !== <>
&
^
|
&&
||
? :
= += -= *= /= .= %= &= |= ^= <<= >>= =>
And
Xor
Or
,
NB : Kolom Associativity digunakan untuk melihat bagaimana arah proses operator dijalankan.
o kiri, contoh : operasi 5 3 1 diproses dari kiri ke kanan. 5 3 1 diproses menjadi (5 3) 1, dan hasilnya adalah 1.
o kanan, contoh : $a = $b = $c, akan diproses dari kanan terlebih dahulu, menjadi $a = ($b = $c).
o Non-associative, berarti operator itu tidak bisa digunakan secara berdampingan. Contoh : 4 < 6 > 2, tidak dapat
diproses, namun 1 <= 1 == 1 bisa diproses karena operator == memiliki urutan prioritas lebih rendah daripada <=.
Nama
Penjumlahan
Pengurangan
Perkalian
Pembagian
Modulus
Hasil
Jumlah $a dan $b.
Selisih $a dan $b.
Perkalian $a dan $b.
Pembagian $a dan $b.
Sisa $a dibagi $b.
Nama
And
Or
Xor
Not
Shift Left
Shift right
Hasil
Bit di set 1 jika kedua-duanya, yaitu $a dan $b bernilai 1.
Bit di set 1 jika nilai salah satu dari $a dan $b bernilai 1.
Bit diset 1 jika kedua nilai dari $a dan $b memiliki perbedaan.
Bit akan diset 1 jika $a bernilai 0 dan diset 0 jika $a bernilai 1.
Geser bit $a sebanyak $b langkah kekiri (setiap langkah berarti kalikan dengan dua)
Geser bit $a sebanyak $b langkah kekanan (setiap langkah berarti dibagi dengan dua)
Contoh:
<?php
$a=0b10110101;
$b=0b01101100;
echo "\$a = 10110101 = $a"; echo "<br />";
echo "\$b = 01101100 = $b"; echo "<br />";
echo "<br />";
echo "==Hasil Bitwise=="; echo "<br />";
$hasil = $a & $b;
echo "1. \$a & \$b = $hasil"; echo "<br />";
$hasil = $a | $b;
echo "2. \$a | \$b = $hasil"; echo "<br />";
$hasil = $a ^ $b;
echo "3. \$a ^ \$b = $hasil"; echo "<br />";
echo "4. ~\$a = ".~$a; echo "<br />";
$hasil = $a >> 1;
echo "5. \$a >> 1 = $hasil"; echo "<br />";
$hasil = $b << 2;
echo "6. \$b << 2 = $hasil"; echo "<br />";
?>
$a = 20, $b = 15, $c = 5
$a = 10, $b = 10, $c = 5
Assigment array, adalah operator assigment untuk menginput nilai kedalam array. Operator ini menggunakan
tanda panah (=>).
Assignment by Reference, adalah operator assigment khusus yang digunakan untuk men-copy nilai referensi
dari sebuah variabel. Assignment by Reference dalam PHP menggunakan operator (= &). Contoh :
<?php
$a = 20;
$b = &$a;
echo "\$a = $a, \$b = $b";
echo "<br />";
// hasil proses: $a = 20, $b = 20
$a = $a + 5;
echo "\$a = $a, \$b = $b";
echo "<br />";
// hasil proses: $a = 25, $b = 25
$b = $b + 10;
echo "\$a = $a, \$b = $b";
// hasil proses: $a = 35, $b = 35
?>
Operator gabungan assigment adalah cara penulisan singkat operator dengan menggunaan sebuah operatror assigment
secara bersamaan dengan operator lainnya.
Assignment
x += y
x -= y
x *= y
x /= y
x %= y
a .= b
x ^= y
x &= y
x |= y
Hasil
x=x+y
x=xy
x=x*y
x=x/y
x=x%y
a=a.b
x=x^y
x=x&y
x=x|y
Nama
Plus-Equals
Minus-Equals
Multiply-Equals
Devide-Equals
Modulus-Equals
Concatenate-Equals
Bitwise-XOR-Equals
Bitwise-AND-Equals
Bitwise-OR-Equals
Contoh:
<?php
$b = 10;
$b += 5; // sama dengan $b = $b + 5;
$b -= 10;// sama dengan $b = $b - 10;
echo "\$b = $b";
?>
Name
Sama dengan
Identik
$a != $b
$a <> $b
$a !== $b
$a < $b
$a > $b
$a <= $b
$a >= $b
Kurang dari
Lebih besar dari
Kurang dari atau sama dengan
Lebih besar dari atau sama dengan
Result
BENAR jika $ a sama dengan $b.
BENAR jika $a sama dengan $b, dan keduanya memiliki tipe yang
sama.
BENAR jika $a tidak sama dengan $b.
BENAR jika $a tidak sama dengan $b.
BENAR jika $a tidak sama dengan $b, atau tidak memiliki tipe yang
sama.
BENAR jika $a kurang dari $b.
BENAR jika $a lebih besar dari $b.
BENAR jika $a kurang dari atau sama dengan $b.
BENAR jika $a lebih besar dari atau sama dengan $b.
Contoh:
<?php
echo "1. 12 < 14 = "; var_dump(12<14); // bool(true)
echo "<br />";
echo "2. 14 < 14 = "; var_dump(14<14); // bool(false)
echo "<br />";
?>
Nama
And
Or
Xor
Not
And
Or
Hasil
BENAR jika baik $a dan $b keduanya BENAR.
BENAR jika salah satu dari $a atau $b BENAR.
BENAR jika salah satu dari $a atau $b BENAR, tetapi tidak keduanya.
BENAR jika $a tidak BENAR.
BENAR jika baik $a dan $b keduanya BENAR.
BENAR jika salah satu dari $a atau $b BENAR.
Contoh:
<?php
$hasil1 = true and false;
echo '$hasil1 = ';
echo var_dump($hasil1)."<br/>"; // $hasil1 = bool(true)
$hasil2 = (true and false);
echo '$hasil2 = ';
echo var_dump($hasil2)."<br/>"; // $hasil2 = bool(false)
?>
Type Juggling, adalah sebuah proses untuk menentukan jenis tipe data yang cocok dengan operasi saat itu,
dan PHP akan menkonversinya secara langsung secara otomatis.
Contoh:
<?php
<?php
$a=12;
$a=12;
$b="9 kucing";
$b="9 kucing";
echo $a+$b; // 21
echo $a AND $b;
?>
?>
Dalam kode diatas, mendefenisikan variabel $a sebagai Operator AND membutuhkan 2 inputan bertipe
integer (angka) dan variabel $b sebagai string. Operasi boolean, yakni nilai TRUE atau FALSE. Namun karena
penambahan seharusnya membutuhkan 2 inputan menggunakan tipe integer 12 dan type string 9
berupa angka, namun seperti yang terlihat ketika kucing, maka kedua operand ini akan dikonversi
program dijalankan, PHP dengan senang hati akan menjadi TRUE. Maka hasil $a AND $b pada contoh
menjalankan perintah tersebut tanpa mengeluarkan program diatas adalah TRUE. Dan PHP akan
error. 12+9 kucing akan menghasilkan nilai 21.
mengkonversi boolean TRUE menjadi string 1.
Type Casting, adalah proses perubahan type data secara manual dengan menggunaan instruksi di dalam kode
program.
Contoh:
<?php
$a=12;
$b="9 kucing";
echo $b;
//9 kucing
echo "<br />";
echo (integer) $b; //9
echo "<br />";
echo (boolean) $b; //1
?>
Pada baris ke 6, echo (integer) $b, perintah ini adalah men-casting tipe data yang ada didalam variabel $b (apapun
tipe datanya) menjadi integer. Dan pada baris ke 8. Adalah perintah untuk meng-casting tipe data $b menjadi
boolean.
Jenis-jenis perintah casting yang ada dalam PHP adalah sebagai berikut:
o (int), (integer)
: mengubah tipe data menjadi integer
o (bool), (boolean)
: mengubah tipe data menjadi boolean
o (float), (double), (real) : mengubah tipe data menjadi float
o (string)
: mengubah tipe data menjadi string
o (array)
: mengubah tipe data menjadi array
o (object)
: mengubah tipe data menjadi object
o (unset)
: mengubah tipe data menjadi NULL (PHP 5)
Aturan konversi data dalam PHP
o Konversi menjadi Integer
- Jika tipe data asal adalah float, maka perubahan menjadi integer akan membuang tanda
desimal dari float. Contohnya, 3.94 akan menjadi integer 3.
- Jika tipe data asal adalah boolean, maka nilai TRUE akan menjadi 1, dan FALSE manjadi 0.
- Jika tipe data asal adalah string, maka string akan dipotong pada angka terakhir yang
ditemukan, mulai dari awal string. Namun jika diawal string tidak terdapat angka, maka string
akan dikonversi menjadi 0. Contohnya, 9 Kucing akan menjadi integer 9, 999 kucing
akan menjadi integer 999. kucing 99 akan menjadi 0, 14,5 kali gaji akan menjadi integer
14 (karena desimal akan dibuang dari string)
- Jika tipe data asal adalah array kosong (tanpa data) maka jika dikonversi menjadi integer
akan menghasilkan 0, namun array dengan isi data minimal 1, akan dikonversi menjadi 1.
o Konversi menjadi float
Secara garis besar, konversi menjadi float hampir sama dengan konversi menjadi integer,
dengan perbedaan jika tipe asal adalah string, maka angka desimal akan diperhitungkan,
misalnya 14,5 kali gaji akan dikonversi menjadi float 14,5.
Konversi menjadi boolean
- Jika tipe data asal adalah integer, maka angka 0 akan dikonversi menjadi FALSE, selain itu,
akan dikonversi menjadi TRUE. Contohnya 0 -> FALSE, 1 -> TRUE, -1 -> TRUE.
- Jika tipe data asal adalah float, maka angka 0.0 akan dikonversi menjadi FALSE, selain itu,
akan dikonversi menjadi TRUE. Contohnya 0.0 -> FALSE, 1,9 -> TRUE, -1,6 -> TRUE.
- Jika tipe data asal adalah string, maka string (tanpa karakter) akan dikonversi menjadi
FALSE, string 0 (string dengan karakter nol) akan dikonversi menjadi FALSE, selain itu
akan dikonversi menjadi TRUE. Contohnya: -> FALSE, ->TRUE (karakter spasi), 0
-> FALSE.
- Jika tipe data asal adalah array, maka array kosong (tanpa data) akan dianggap FALSE, selain
itu array akan dikonversi menjadi TRUE.
= "biru";
if ($WarnaKesukaan == "biru") {
Statement Switch
Mengerjakan 1 pekerjaan yang bernilai true dari beberapa blok kode untuk di eksekusi.
switch (n){
case label1:
//kode yang akan dijalankan jika n=label1;
break;
case label2:
//kode yang akan dijalankan jika n=label2;
break;
case label3:
//kode yang akan dijalankan jika n=label3;
break;
...
default:
//kode yang akan dijalankan jika n berbeda dari semua label;
}
Contoh:
<?php
$favcolor="merah";
switch ($favcolor) {
case "merah":
echo "Warna favoritmu adalah merah!";
break;
case "biru":
echo " Warna favoritmu adalah biru!";
break;
case "hijau":
echo " Warna favoritmu adalah hijau!";
break;
default:
echo " Warna favoritmu adalah tidak merah, biru, atau hijau!";
}
?>
NB : Penggunaan option DEFAULT pada SWITCH adalah optional. Bisa untuk tidak memberikan DEFAULT jika
memang tidak diperlukan.
Perulangan While
inisiasi;
while (kondisi){
statement;
counter;
}
Perulangan while untuk situasi dimana kita membutuhkan kondisi perulangan yang tidak dapat dipastikan berapa kali
perulangan akan dilakukan.
Contoh:
<?php
$i = 1;
while($i <= 5){
echo "Perulangan ke " . $i . "<br/>";
$i++;
}
?>
Perulangan Do..while
inisiasi;
do {
statement;
counter;
} while (kondisi);
Statement do while hampir mirip dengan while , baris kode dalam do while akan dieksekusi terlebih dahulu sebanyak
satu kali baru kemudian melihat kondisi, bila kondisi true maka perulangan akan terus dilakukan.
Contoh:
<?php
$i = 1;
do {
echo "$i ";
$i+=2;
} while ($i <= 20);
?>
Perulangan For
for(inisiasi; kondisi; counter;){
statement;
}
Instruksi for membutuhkan syarat yaitu kita telah mengetahui berapa kali perulangan akan dilakukan pada saat penulisan
program. Untuk situasi dimana kita membutuhkan kondisi perulangan yang tidak dapat dipastikan berapa kali perulangan
akan dilakukan, maka kita tidak bisa menggunakan perulangan for.
Contoh:
<?php
for($x=1; $x<=5; $x++){
echo "Pengulangan ke " . $x . "<br/>;
}
?>
Kesalahan dari struktur for tersebut adalah pada kondisi akhir dari
perulangan, dimana saya membuat $i >= 1, sehingga ketika nilai
awal variabel counter $1 adalah 20, dan dalam tiap perulangan $i
ditambah 1, maka nilai $i akan selalu lebih besar dari 1, sehingga
kondisi akhir tidak akan pernah terpenuhi, dan $i >= 1 akan selalu
benar.
Perulangan Foreach
foreach ($nama_array as $value){
foreach ($nama_array as $key => $value){
statement (...$value...)
statement ($key...$value...)
}
}
Penjelasan:
o $nama_array adalah nama dari array yang telah didefenisikan sebelumnya.
o $value adalah nama variabel perantara yang berisi data array pada perulangan tersebut. Anda bebas
memberikan nama untuk variabel perantara ini.
o $key ini menampung nilai key dari array.
<?php
Struktur foreach biasanya digunakan untuk melakukan perulangan berdasarkan isi suatu array. Perulangan akan berakhir
jika isi array telah habis.
Contoh:
<?php
$nama = array("Andri","Joko","Sukma","Rina","Sari");
foreach ($nama as $val){
echo "$value";
echo "<br />";
}
?>
$nama = array(
1=>"Andri",
6=>"Joko",
12=>"Sukma",
45=>"Rina",
55=>"Sari");
foreach ($nama as $kunci =>$isi){
echo "Urutan ke-$kunci adalah $isi";
echo "<br />";
}
?>
Break, berfungsi sebagai perintah kepada web server untuk menghentikan perulangan secara prematur, yaitu
menghentikan perulangan di luar dari yang direncanakan.
Contoh:
<?php
<?php
for ($i=0; $i <100; $i++){
$i=0;
if ($i==13){
while ($i < 100){
break;
$i++;
}
if ($i==13){
echo $i;
break;
echo "<br />";
}
?>
echo $i;
echo "<br />";
}
?>
Contoh dalam penggunaan nested loop:
<?php
for ($i=0; $i <10; $i++){
for ($j=0; $j <10; $j++){
if ($i==4){
break;
}
echo $i;
}
echo "<br />";
}
Jika kita membuat perintah break pada perulangan $j
(inner loop), maka yang akan dihentikan hanya perulangan
$j saja, seperti pada contoh program diatas.
<?php
for ($i=0; $i <10; $i++){
for ($j=0; $j <10; $j++){
if ($i==4){
break 2;
}
echo $i;
}
echo "<br />";
}
Angka 2 bertujuan untuk memberitahu PHP bahwa
perintah break ditujukan untuk 2 level perulangan
diatasnya.
NB : Angka 2 bertujuan untuk memberitahu PHP bahwa perintah break ditujukan untuk 2 level perulangan
diatasnya. Jika membuat nested loop dengan 3 tingkatan, atau 3 level, maka menggunakan perintah break 3
untuk keluar dari perulangan terdalam.
Continue, hanya akan menghentikan perulangan untuk 1 iterasi saja, lalu proses perulangan akan dilanjutkan.
Contoh:
<?php
<?php
for ($i=0; $i <10; $i++){
$i=0;
if ($i==7){
while ($i < 100){
continue;
$i++;
}
if ($i==13){
echo $i;
continue;
echo "<br />";
}
}
echo $i;
echo "<br />";
}
Arti dari continue ini adalah sebuah instruksi kepada PHP untuk melewati sisa perintah dalam perulangan, dan
langsung lompat ke nilai counter berikutnya, yakni 8. Dari hasil program, anda tidak akan melihat angka 7
ditampilkan.
Contoh dalam penggunaan nested loop:
<?php
Array di PHP
Pada bahasa pemrograman PHP ada tiga buah tipe array, diantaranya adalah :
o Array Berindeks
: Sebuah array yang memiliki index berupa angka.
o Array Asosiatif
: Sebuah array yang memiliki index berupa key yang terkait dengan nilai.
o Array Multidimensional : Sebuah array yang memiliki satu (atau lebih) array didalamnya.
Array Berindeks
Proses Pengisian Data
$kota = array("Jakarta", "Bandung", "Surabaya");
Dimana index akan terbentuk secara otomatis (index akan selalu dimulai dari 0). ATAU, index bisa di-set secara manual
seperti berikut :
$kota[0] = "Jakarta";
$kota[1] = "Bandung";
$kota[2] = "Surabaya";
Proses Menampilkan Data
Tanpa Perulangan
<?php
$jumlah = count($kota);
echo "Saya pernah ke " . $jumlah . " kota di Indonesia. Yaitu kota
" . $kota[0] . ", " . $kota[1] . " dan kota " . $kota[2];
?>
Menggunakan Perulangan
<?php
$jumlah = count($kota);
for($i = 0; $i < $jumlah; $i++){
echo $kota[$i] . "<br/>";
}
?>
Array Asosiatif
Proses Pengisian Data
$umur = array(
"Budi"
"Toni"
"Susan"
);
=> "20",
=> "25",
=> "22"
$umur["Budi"] = "20";
$umur["Toni"] = "25";
$umur["Susan"] = "22";
Array Multidimensional
Proses Pengisian Data
<?php
$kelas = array(
"1A" => array(
"Joko",
"Joni",
"Toni"
),
"1B" => array(
"Susan",
"Soni",
"Surti"
),
"1C" => array(
"Dono",
"Kasino",
"Indro"
)
);
?>
Proses Menampilkan Data
Tanpa Perulangan
echo "Siswa bernama " . $kelas["1C"][1] . " Berada di kelas 1C.";
Dengan Perulangan
<?php
while (list($indeks1, $nilai1) = each($kelas)){
printf("Kelas $indeks1 : <br>\n");
$nomor=1;
while (list($indeks2, $nilai2) = each($nilai1)){
printf("$nomor.$nilai2 <br>\n");
$nomor++;
}
}
?>
Keterangan
Menciptakan sebuah array
Mengubah semua key dalam array ke huruf kecil atau huruf besar.
Membagi array menjadi potongan array
Mengembalikan nilai dari satu kolom dalam array masukan
Menciptakan sebuah array dengan menggunakan unsur-unsur dari satu "kunci" array dan satu "nilainilai" array
Menghitung semua nilai dari array
Membandingkan array, dan mengembalikan perbedaan (membandingkan nilai saja)
Membandingkan array, dan mengembalikan perbedaan (membandingkan kunci dan nilai)
Membandingkan array, dan mengembalikan perbedaan (membandingkan kunci saja)
Membandingkan array, dan mengembalikan perbedaan (membandingkan kunci dan nilai, menggunakan
fungsi kunci perbandingan yang ditetapkan oleh pengguna)
Membandingkan array, dan mengembalikan perbedaan (membandingkan kunci, menggunakan fungsi
kunci perbandingan yang ditetapkan oleh pengguna)
Mengisi array dengan beberapa nilai
Mengisi array dengan nilai lalu menentukan kunci
Memfilter nilai dari sebuah array menggunakan fungsi callback
Membalikkan / mengubah kunci dengan nilai-nilai yang terkait dalam array
Membandingkan array, dan mengembalikan pertandingan (membandingkan nilai saja)
Membandingkan array dan mengembalikan pertandingan (membandingkan kunci dan nilai-nilai)
Membandingkan array, dan mengembalikan pertandingan (membandingkan kunci saja)
Membandingkan array, dan mengembalikan pertandingan (membandingkan kunci dan nilai,
menggunakan fungsi kunci perbandingan yang ditetapkan oleh pengguna)
Membandingkan array, dan mengembalikan pertandingan (membandingkan kunci, menggunakan fungsi
kunci perbandingan yang ditetapkan oleh pengguna)
Memeriksa apakah kunci tertentu ada dalam array
Mengembalikan semua kunci array
Mengirim setiap nilai array ke fungsi buatan pengguna yang mengembalikan nilai-nilai baru
Menggabungkan satu atau lebih array menjadi satu array
Menggabungkan satu atau lebih array ke dalam satu array rekursif
Mengurutkan beberapa array atau multi-dimensi array
Menyisipan sejumlah item tertentu dengan nilai tertentu ke dalam array
array_pop ()
array_product ()
array_push ()
array_rand ()
array_reduce ()
array_replace ()
array_replace_recursive ()
array_reverse ()
array_search ()
array_shift ()
array_slice ()
array_splice ()
array_sum ()
array_udiff ()
array_udiff_assoc ()
array_udiff_uassoc ()
array_uintersect ()
array_uintersect_assoc ()
array_uintersect_uassoc ()
array_unique ()
array_unshift ()
array_values ()
array_walk ()
array_walk_recursive ()
arsort ()
asort ()
compact ()
count ()
current ()
each ()
end ()
extract ()
in_array ()
key ()
krsort ()
ksort ()
list ()
natcasesort ()
natsort ()
next ()
pos ()
prev ()
range ()
reset()
rsort ()
shuffle ()
sizeof ()
sort ()
uasort ()
uksort ()
usort ()
[0]=9
[1]=3
[2]=0
[3]=5
[4]=1
array_values(), fungsi array_values() digunakan untuk menyusun kembali array yang ada (merapikan array).
Contoh:
<?php
[0]=1
$x = array( 1, 3, 0, 5, 9 );
[1]=3
unset($x[2]);
[3]=5
foreach ($x as $key => $val) {
[4]=9
echo "[ $key ] = $val<br/>";
dengan fungsi array_values() menjadi
}
[0]=1
echo "dengan fungsi array_values() [ 1 ] = 3
menjadi <br/>";
[2]=5
$x=array_values($x);
[3]=9
foreach ($x as $key => $val) {
echo "[ $key ] = $val<br/>";
}
?>
array_search()
fungsi array_search() digunakan untuk melakukan pencarian terhadap index dari suatu array berdasarkan nilai.
Contoh:
<?php
Array ( [0] => 1 [1] => 3 [2] => 0 [3] => 5 [4] => 9 )
$x = array( 1, 3, 0, 5, 9 );
nilai max = 9, nilai min = 0
print_r($x);
index max = 4, index min = 2
$min = min($x);
$max = max($x);
echo "<br/>nilai max = $max, nilai
min = $min";
$index_min = array_search($min,$x);
$index_max = array_search($max,$x);
echo "<br/>index max = $index_max,
index min = $index_min";
?>
array_unique()
fungsi array_unique digunakan untuk memastikan nilai array bersifat unik atau tidak ada nilai kembar pada
array tersebut.
Contoh:
<?php
Array ( [0] => 1 [1] => 5 [2] => 0 [3] => 5 [4] => 1 )
$x = array( 1, 5, 0, 5, 1 );
dengan array_unique
print_r($x);
Array ( [0] => 1 [1] => 5 [2] => 0 )
$y = array_unique($x);
echo "<br/>dengan array_unique<br/>";
print_r($y);
?>
count(), fungsi count() digunakan untuk menghitung jumlah array yang ada.
Contoh:
<?php
Array ( [0] => 1 [1] => 5 [2] => 0 [3] => 5 [4] =>
$x = array( 1, 5, 0, 5, 1, 7, 3, 2 );
1 [5] => 7 [6] => 3 [7] => 2 )
print_r($x);
jumlah array x adalah = 8
$y = count($x);
echo "<br/>jumlah array x adalah = $y";
?>
Function di PHP
Fungsi (atau Function) dalam bahasa pemograman adalah kode program yang dirancang untuk menyelesaikan sebuah tugas
tertentu, dan merupakan bagian dari program utama. Fungsi dipanggil dengan menulis nama dari fungsi tersebut, dan diikuti
dengan argumen (jika ada). Argumen ditulis di dalam tanda kurung, dan jika jumlah argumen lebih dari satu, maka diantaranya
dipisahkan oleh karakter koma.
o
o
Agrumen, adalah sebutan untuk inputan fungsi pada saat pemanggilan fungsi.
Parameter, adalah sebutan untuk inputan fungsi pada saat pendefenisian fungsi tersebut.
<?php
//pembuatan fungsi
function perkalian($a, $b){
$hasil = $a*$b;
return $hasil;
}
<?php
//pemanggilan fungsi
echo "Luas Lingkaran dgn r = 7cm = ".luas(7);
//pemanggilan fungsi
$hasil = perkalian(4,5);
echo "Hasil 4 x 5 adalah $hasil";
echo "<br />";
echo "7 x 2 = ".perkalian(7,2);
?>
//pembuatan fungsi
function luas ($jari2){
return 3.14*$jari2*$jari2;
}
?>
<?php
//pembuatan fungsi
function perkalian($a, $b){
global $c;
$c= $a*$b;
}
//pemanggilan fungsi
perkalian(4,5);
echo "Perkalian 4 x 5 adalah $c";
echo "<br />";
echo "Perkalian 7 x 2 adalah ".perkalian(7,2)."$c";
?>
//Bagian ini akan dijalankan jika tipe data argumen bukan angka
return "Tipe data argumen harus berupa angka";
}
function coba(){
$a=10;
echo $a;
echo $b;
}
coba();
echo $a; // 5
echo $b; // error:notice
?>
Setelah memanggil fungsi coba(). Dan ternyata nilai $a adalah 5, bukan
10. Dan ketika mengakses variabel $b, PHP akan mengeluarkan
peringatan bahwa variabel $b belum di defenisikan.
Hal ini terjadi karena variabel $a dan $b berada di dalam fungsi coba()
yang merupakan variabel yang berbeda dengan variabel $a yang berada
diluar fungsi. Jangkauan variabel $a dan $b hanya berada di dalam
fungsi.
coba();
?>
Pada program kali ini, mencoba
mengakses variabel $b dari dalam
fungsi coba(), namun PHP tidak
menemukan adanya variabel $b.
Variabel $b hanya dapat diakses
dalam ruang lingkup di luar fungsi
coba().
Variabel Global Scope, semua variabel yang di definisikan diluar fungsi / function. Variabel yang bersifat
global scope bisa di akses oleh semua bagian dari script diluar fungsi / function. Untuk mengakses variabel
global scope dalam suatu fungsi maka bisa digunakan kata kunci global.
Contoh:
<?php
<?php
$x = 12;
$a = 7;
function fungsiku(){
global $x;
echo ($x * 2);
}
fungsiku();
?>
function coba(){
global $a;
global $b;
$b=15;
echo $a; //7
echo $b; //15
}
coba();
echo $a; //7
echo $b; //15
?>
Kata kunci global membuat fungsi dapat mengakses variabel yang didefenisikan diluar fungsi.
Variabel Static Scope, atau variabel statis adalah jenis variabel yang mempertahankan nilainya pada setiap
pemanggilan fungsi (untuk variabel normal, nilai dari variabel tersebut akan secara otomatis dihapus pada saat
fungsi selesai dijalankan, dan akan dibuat ulang pada saat fungsi dipanggil). Namun jika sebuah variabel
dinyatakan sebagai static variabel, maka nilai variabel tersebut akan tetap dipertahankan walaupun fungsi telah
selesai dijalankan. Biasanya fungsi ini dimanfaatkan jika kita ingin menghitung berapa kali sebuah fungsi
dipanggil.
Contoh:
<?php
function coba(){
static $a=0;
$a=$a+1;
return "Ini adalah pemanggilan ke-$a fungsi coba() <br />";
}
echo coba();
echo coba();
echo coba();
echo coba();
?>
Jika keyword static pada baris ke-4 dihapus, maka variabel $a akan selalu bernilai 0, karena nilainya akan
dihapus pada setiap kali pemanggilan fungsi coba().
Variable Parameter
Variable Parameter adalah sebuah fitur dalam PHP dimana kita bisa membuat fungsi dengan jumlah parameter yang
bisa berubah-ubah (variable). PHP menyediakan 3 fungsi tambahan untuk mengakses argumen yang diinput pada saat
fungsi dipanggil. Ketiga fungsi ini digunakan secara bersamaan, yaitu:
o func_num_args()
: fungsi ini akan mengembalikan banyaknya jumlah argumen dalam
pemanggilan fungsi, apakah 1 argumen, 3 argumen, atau 10 argumen.
o func_get_args()
: fungsi ini akan mengembalikan seluruh nilai argumen dalam sebuah
fungsi. Hasilnya dalam bentuk array.
o func_get_arg(no_urut_argumen) : fungsi ini akan mengembalikan nilai dari argumen pada nomor urut yang
diberikan kepadanya.
NB : func_get_arg(no_urut_argumen) menghitung nomor urut argument dimulai dari index ke 0, sehingga
argumen kedua berada di index ke 1.
Contoh:
Untuk mengetahui fungsi dari setiap fungsi yang digunakan
<?php
function penambahan(){
//ambil variable parameter
$array_argumen = func_get_args();
$jumlah_argumen = func_num_args();
$nilai_argumen_ke_2 = func_get_arg(1); //index dimulai dari 0
//tampilkan hasil variable parameter
echo "Jumlah argumen: $jumlah_argumen";
echo "<br />";
echo "Nilai argumen ke-2: $nilai_argumen_ke_2";
echo "<br />";
echo "Array Argumen: ";
var_dump($array_argumen);
echo "<br />";
echo "<br />";
return;
}
echo "Rincian dari fungsi penambahan(1,2) : ";
echo "<br />";
penambahan(1,2);
echo "Rincian dari fungsi penambahan(5,4,3,2,1) : ";
echo "<br />";
penambahan(5,4,3,2,1);
echo "Rincian dari fungsi penambahan(0,6,8,19) : ";
echo "<br />";
echo penambahan(0,6,8,19);
?>
Code program yang sesungguhnya
<?php
function penambahan(){
//ambil variable parameter
$array_argumen = func_get_args();
$jumlah_argumen = func_num_args();
//proses penambahan
$nilai=0;
for ($i = 0; $i < $jumlah_argumen; $i++){
$nilai += func_get_arg($i);
}
return $nilai;
}
echo "penambahan(1,2) = ".penambahan(1,2);
echo "<br />";
echo "penambahan(5,4,3,2,1) = ".penambahan(5,4,3,2,1);
echo "<br />";
echo "penambahan(0,6,8,19,20,44,21) = ".penambahan(0,6,8,19,20,44,21);
?>
include(), digunakan untuk menyertakan suatu file kedalam proses yang sedang berjalan. Dibutuhkan satu
argumen yang akan menjadi string ke path file yang ingin disertakan. Kode dalam file yang disertakan akan
dijalankan ketika fungsi Include dipangil.
Aturan penulisan :
include "halaman_utama.php";
Contoh:
include index.php;
$inc = include(index.html);
var_dump($inc);
include_once(), sama seperti fungsi include, namun dijalankan hanya satu kali pemanggilan.
Aturan penulisan :
include_once "halaman_utama.php";
Contoh:
include_once index.php;
$inc = include_once (index.html);
var_dump($inc);
require(), digunakan untuk menyertakan dan menjalankan suatu file, namun melakukan validasi terhadap
sumber dan menghentikan proses jika ditemukan kesalahan.
Aturan penulisan :
require "halaman_utama.php";
Contoh:
require index.php;
$req = require(index.html);
var_dump($req);
require_once(), sama seperti fungsi require, namun dijalankan hanya satu kali pemanggilan.
Aturan penulisan :
require_once "halaman_utama.php";
Contoh:
require_once index.php;
$req = require_once (index.html);
var_dump($req);
Manajemen Session
Session adalah komponen atau fungsi pada PHP yang digunakan untuk menyimpan informasi sementara sebelum
browser ditutup atau user meninggalkan situs web. Session bekerja dengan membuat sebuah ID Unik yang disebut juga
session_id untuk setiap pengunjung dan menyimpan variable berdasarkan ID tersebut.
Kegunaan session:
Mencegah user mengakses halaman yang sifatnya private tanpa melakukan login.
Menjaga atau memelihara informasi akses dari seseorang pengakses atau pengguna aplikasi web.
Memungkinkan pelacakan akses pengguna.
Pengaturan pemakaiaan aplikasi oleh pengguna.
Meningkatkan layanan situs web.
Property
Property (atau disebut juga dengan atribut) adalah data yang terdapat dalam sebuah class. Property ini
sebenarnya hanyalah variabel yang terletak di dalam class. Seluruh aturan dan tipe data yang biasa diinput
kedalam variabel, bisa juga diinput kedalam property. Aturan tata cara penamaan property sama dengan aturan
penamaan variabel.
Berikut adalah contoh penulisan class dengan penambahan property:
<?php
class laptop {
var $pemilik; //property
var $merk; //property
var $ukuran_layar; //property
// lanjutan isi dari class laptop...
}
?>
Keterangan:
Dari contoh diatas, $merk, $ukuran_layar dan $jenis_processor adalah property dari class laptop. Sebuah
class tidak harus memiliki property.
Method
Method adalah tindakan yang bisa dilakukan didalam class. Method pada dasarnya adalah function yang
berada di dalam class. Seluruh fungsi dan sifat function bisa diterapkan kedalam method, seperti
argumen/parameter, mengembalikan nilai (dengan keyword return), dan lain-lain.
Berikut adalah contoh penulisan class dengan penambahan method:
<?php
class laptop {
function hidupkan_laptop() {
//... isi dari method hidupkan_laptop
}
function matikan_laptop() {
//... isi dari method matikan_laptop
}
... //isi dari class laptop
}
?>
Keterangan:
Dari contoh diatas, function hidupkan_laptop() dan function matikan_laptop() adalah method dari class
laptop. Sebuah class tidak harus memiliki method.
Object
Object atau Objek adalah hasil cetak dari class, atau hasil konkrit dari class. Proses mencetak objek dari
class ini disebut dengan instansiasi (atau instantiation dalam bahasa inggris). Pada PHP, proses instansiasi
dilakukan dengan menggunakan keyword new. Hasil cetakan class akan disimpan dalam variabel untuk
selanjutnya digunakan dalam proses program.
Pendeklarasian Objek pada PHP:
$variable = new nama_class();
Contoh:
<?php
class laptop {
//... isi dari class laptop
}
$laptop_andi = new laptop(); //objek
$laptop_anto = new laptop();
?>
Keterangan:
Dari contoh diatas, $laptop_andi dan $laptop_anto merupakan objek dari class laptop. Kedua objek ini akan
memiliki seluruh property dan method yang telah dirancang dari class laptop.
}
$laptop_andi= new laptop();
echo $laptop_andi->hidupkan_laptop("Andi", "Lenovo");
echo $laptop_andi->hidupkan_laptop_anto();
Default Parameter
Contoh:
class laptop {
public function hidupkan_laptop($pemilik="Joko",$merk="Samsung") {
return "Hidupkan Laptop $merk punya $pemilik";
}
}
$laptop_andi= new laptop();
echo $laptop_andi->hidupkan_laptop();
echo $laptop_andi->hidupkan_laptop("Andi", "Lenovo");
Ketika method tersebut dipanggil tanpa menambahkan argumen, nilai Joko dan Samsung akan digunakan
sebagai nilai default, namun jika argumen ditulis, nilai argumen yang diinput akan menimpa nilai default ini.
// tampilkan property
echo $laptop_saya->pemilik; // Saya
echo "<br />";
// tampilkan method
echo $laptop_saya->hidupkan_laptop();
echo "<br />";
?>
return parent::lihat_spec();
}
$gadget_baru = new laptop();
echo $gadget_baru->lihat_spec(), "<br />";
echo $gadget_baru->lihat_spec_komputer(), "<br />";
echo $gadget_baru->lihat_merk_komputer();
Public
Ketika sebuah property atau method dinyatakan sebagai public, maka seluruh kode program di luar class bisa
mengaksesnya, termasuk class turunan.
Contoh:
public $pemilik;
public function hidupkan_laptop() {
return "Hidupkan Laptop";
}
Protected
Jika sebuah property atau method dinyatakan sebagai protected, berarti property atau method tersebut tidak
bisa diakses dari luar class, namun bisa diakses oleh class itu sendiri atau turunan class tersebut.
Contoh:
protected $pemilik;
protected function hidupkan_laptop() {
return "Hidupkan Laptop";
}
Private
Jika sebuah property atau method di-set sebagai private, maka satu-satunya yang bisa mengakses adalah class
itu sendiri. Class lain tidak bisa mengaksesnya, termasuk class turunan.
Contoh:
private $jenis_processor = "Intel Core i7-4790 3.6Ghz";
public function tampilkan_processor() {
return $this->jenis_processor;
}
Constructor
Constructor adalah method khusus yang akan dijalankan secara otomatis pada saat sebuah objek dibuat
(instansiasi), yakni ketika perintah new dijalankan. Constructor biasa digunakan untuk membuat proses awal
dalam mempersiapkan objek, seperti memberi nilai awal kepada property, memanggil method internal dan
beberapa proses lain yang digunakan untuk mempersiapkan objek.
Destructor
Destructor adalah method khusus yang dijalankan secara otomatis pada saat sebuah objek dihapus. Di dalam
PHP, seluruh objek secara otomatis dihapus ketika halaman PHP dimana objek itu berada selesai diproses.
Tetapi kita juga dapat menghapus objek secara manual. Destructor biasanya digunakan untuk membersihkan
beberapa variabel, atau menjalankan proses tertentu sebelum objek dihapus.
Mengakses Static Property dan Static Method Dari Class Itu Sendiri
Untuk mengakses static property dan static method, kita menggunakan keyword self::.
class laptop {
public $merk;
public $pemilik;
public static $harga_beli;
laptop::$harga_beli=4000000;
echo laptop::beli_laptop();
laptop::beli_semua();
$laptop_baru=new laptop();
echo $laptop_baru->beli_laptop(400)."<br />";
echo $laptop_baru->beli_komputer(400);
$laptop_baru=new laptop();
// Fatal error: Class laptop may
inherit from final class (komputer)
not
final
Abstract class dan abstract method berfungsi untuk membuat kerangka bagi seluruh class dibawahnya.
Abstract Class
Abstract Class adalah sebuah class yang tidak bisa di-instansiasi (tidak bisa dibuat menjadi objek) dan
berperan sebagai kerangka dasar bagi class turunannya. Di dalam abstract class umumnya akan memiliki
abstract method. Abstract class digunakan di dalam inheritance (pewarisan class) untuk memaksakan
implementasi method yang sama bagi seluruh class yang diturunkan dari abstract class.
Contoh:
abstract class komputer {
// isi dari class komputer
}
o
Jika sebuah class diturunkan dari abstract class, maka class tersebut harus membuat ulang seluruh
abstract method yang terdapat dalam abstract class, dan juga harus sesuai dengan signature-nya.
Contoh:
abstract class komputer{
abstract public function lihat_spec();
}
class laptop extends komputer{
public function lihat_spec(){
return "Lihat Spec Laptop...";
}
public function beli_laptop(){
return "Beli Laptop...";
}
}
$laptop_baru = new laptop();
echo $laptop_baru->lihat_spec()."<br />";
echo $laptop_baru->beli_laptop();
o
Abstract Method
Abstract Method adalah sebuah method dasar yang harus diimplementasikan ulang di dalam class anak
(child class). Abstract method ditulis tanpa isi dari method, melainkan hanya signature-nya saja. Signature
dari sebuah method adalah bagian method yang terdiri dari nama method dan parameternya (jika ada).
Contoh:
abstract class komputer {
abstract public function lihat_spec();
}
Jika sebuah method dinyatakan sebagai abstract method, isi dari method tersebut harus dibuat dalam class
turunan. Abstract method harus berada di dalam abstract class.
Kita bisa membuat beberapa abstract method di dalam abstract class.
Contoh:
abstract class komputer{
abstract public function lihat_spec();
abstract public function lihat_processor();
abstract public function lihat_harddisk();
}
class
//
}
class
//
}
class
//
}
yang menggunakan interface. Interface lebih berperan untuk menyeragamkan method. Ia tidak masuk kedalam struktur
class seperti abstract class.
Untuk membuat Interface di dalam PHP, kita menulisnya mirip seperti membuat class, tetapi menggunakan keyword
interface.
interface nama_interfce {
//signature method
}
Untuk menggunakan method kedalam class, kita menggunakan keyword implements.
Contoh:
interface mouse{
public function klik_kanan();
public function klik_kiri();
}
class laptop implements mouse{
public function klik_kanan(){
return "Klik Kanan...";
}
public function klik_kiri(){
return "Klik Kiri...";
}
}
NB : Apabila kita tidak membuat ulang salah satu method yang ada di interface, PHP akan mengeluarkan error. Artinya
didalam class yang menggunakan interface harus mendefinisikan semua method yang ada di interface.
echo
echo
echo
echo
echo
booting_os_komputer($laptop_baru);
"<br />";
booting_os_komputer($pc_baru);
"<br />";
booting_os_komputer($chromebook_baru);
Konsep polimorfisme dari contoh diatas adalah, fungsi booting_os_komputer() akan selalu berhasil dijalankan, selama
argumen yang diberikan berasal dari class yang diturunkan dari class abstract komputer.
booting_os_komputer($laptop_baru)."<br />";
double_klik_komputer($laptop_baru)."<br />"."<br />";
booting_os_komputer($pc_baru)."<br />";
double_klik_komputer($pc_baru)."<br />"."<br />";
booting_os_komputer($chromebook_baru)."<br />";
double_klik_komputer($chromebook_baru);
==================================================================
MySQL
Pengertian SQL
SQL (Structured Query Language) adalah bahasa pemrograman khusus yang digunakan untuk memanajemen data
dalam RDBMS. SQL biasanya berupa perintah sederhana yang berisi instruksi-instruksi untuk manipulasi data. Perintah
SQL ini sering juga disingkat dengan sebutan query.
Setiap perintah, atau sering juga disebut query didalam MySQL harus diakhiri dengan tanda titik koma ;
dan akan dieksekusi setelah tombol Enter ditekan. Selama query MySQL belum diakhiri dengan ; maka itu
dianggap masih dalam satu perintah. Selain menggunakan ;, query MySQL juga akan mengeksekusi perintah
juga diakhiri dengan tanda \g.
Jika ingin membatalkan perintah Query yang telah dibuat, dapat dilakukan dengan kode \c.
Contoh:
mysql> SELECT NOW(),
-> USER(),
-> \c
mysql>
Merubah Tampilan output MySQL
Untuk perintah MySQL (query MySQL) yang menghasilkan output yang panjangnya melebihi layar cmd, akan
sulit bagi kita dalam membacanya. Untuk merubah tampilan output MySQL menjadi baris, tambahkan tanda
\G (huruf G besar, bukan g kecil) setelah perintah query.
Contoh:
mysql> SELECT NOW(),USER(),VERSION()\G
*************************** 1. row ***************************
NOW(): 2014-11-13 09:23:41
USER(): root@localhost
VERSION(): 5.6.21-log
1 row in set (0.00 sec)
Aturan Penulisan huruf BESAR dan kecil dalam MySQL
MySQL tidak membedakan penulisan huruf besar maupun kecil (case insensitive) dalam penulisan fungsi dan
identifier. Namun untuk penulisan nama database dan nama tabel, MySQL akan mengikuti sistem operasi
dimana MySQL Server berjalan. Untuk Sistem Operasi Windows, nama database mahasiswa dianggap sama
dengan MaHaSIsWA, namun dalam MySQL Server yang berjalan pada Linux, kedua database tersebut
dianggap berbeda (case sensitive). Disarankan untuk menggunakan selalu huruf kecil dalam penulisan
database, tabe dan variabel dalam MySQL.
Perhatikan penggunaan tanda
Dalam beberapa kasus, sebuah query bisa saja menggunakan tanda baca selain angka dan huruf seperti : ,
(koma), \ (forward slash/garis miring depan), (tanda petik), dan (spasi). Misalnya untuk 123 dan 123,
12e + 14 dan 12e+14 akan memiliki arti berbeda dalam MySQL.
NB : Tambahan query [IF NOT EXISTS] digunakan untuk membuat MySQL tidak menampilkan pesan error.
Contoh:
CREATE DATABASE [IF NOT EXISTS] mahasiswa
Format [IF NOT EXISTS] akan membuat database jika database itu belum ada sebelumnya. Jika sudah ada, query
CREATE DATABASE tidak akan menghasilkan apa-apa (database yang lama tidak akan tertimpa).
NB : Format perintah query yang terdapat di dalam kurung siku [] merupakan perintah optional, boleh diabaikan jika
tidak diperlukan.
o
o
o
o
Query opsional [IF NOT EXISTS] sama seperti pada query pembuatan database, digunakan untuk
membuat MySQL tidak menampilkan pesan error.
Nama_tabel adalah nama dari tabel yang ingin kita buat.
Daftar_kolom berisi definisi dari kolom-kolom yang akan kita buat untuk database ini.
Tipe_tabel adalah query opsional dimana kita dapat mendefinisikan tipe tabel untuk tabel yang akan
kita gunakan, seperti MyISAM maupun InnoDB.
HTML + PHP
Keterangan:
o Atribut action, atribut ini akan diisi dengan nilai berupa alamat halaman PHP yang dimana akan
memproses isi form tersebut.
o Atribut method, atribut inilah yang akan menentukan bagaimana cara form dikirim ke dalam halaman
proses.php. Nilai dari atribut method hanya bisa diisi dengan get atau post.
o Tag <input type=text>, yang akan menampilkan kotak isian form.
o Atribut name dari tag <input>, nilai dari name inilah yang menjadi penanda masing-masing objek
form agar dapat diproses dengan PHP.
o Atribut type=submit, tombol submit yang apabila di klik akan mengirimkan data dari form ke
halaman proses.php untuk diproses.
Contoh:
header("Location: http://www.duniailkom.com/pendaftaran.html")
Menampilkan Pesan Kesalahan Form
Menggunakan variabel $_GET
Kode pada file Form.php (halaman input data menggunakan form input)
<?php
if (isset($_GET['error'])){
$error=$_GET['error'];
}else{
$error="";
}
$pesan="";
if ($error=="variabel_belum_diset"){
$pesan="Maaf, anda harus mengakses halaman ini dari form.php";
}
if ($error=="nama_kosong"){
$pesan="Maaf, anda harus mengisi nama";
}
if ($error=="nama_harus_huruf"){
$pesan="Maaf, nama harus berupa huruf";
}
if (isset($_GET['nama']) AND isset($_GET['email'])){
$nama=$_GET['nama'];
$email=$_GET['email'];
}else{
$nama="";
$email="";
}
?>
<html>
<head>
<title></title>
</head>
<body>
<form action="post_proses.php" method="get">
Nama: <input type="text" name="nama" value="<?php echo "$nama" ?>"/>
<? echo $pesan; ?><br />
E-Mail:<input type="text" name="email" value="<?php echo"$email" ?>"/>
<? echo $pesan; ?><br />
<input type="submit" value="Proses Data" >
</form>
</body>
</html>
Kode pada file Proses.php (untuk memroses data masukkan dari form input)
<?php
if (isset($_GET['nama']) AND isset($_GET['email'])){
$nama=$_GET['nama'];
$email=$_GET['email'];
$nama=htmlspecialchars($nama);
$email=strip_tags($email);
$isi_form="&nama=$nama&email=$email";
}else{
header("Location:post_form.php?error=variabel_belum_diset");
}
if(empty($nama)){
header("Location:post_form.php?error=nama_kosong".$isi_form);
}else{
if (is_numeric($nama))
{
header("Location:post_form.php?error=nama_harus_huruf".$isi_form);
}else{
echo "Nama: $nama <br /> Email: $email";
}
}
?>
PHP + MySQL
echo
echo
MySQLI Extension
Sebagai pengganti mysql extension, PHP menyediakan mysqli extension (mysqli merupakan singkatan dari
MySQL Improved). Mysqli extension ini pada dasarnya adalah perbaikan dari mysql extension dan
dikembangkan untuk mendukung fitur-fitur terbaru pada versi MySQL 4.1 keatas. Hampir semua fungsi yang
ada pada mysql extension, juga tersedia pada mysqli.
Contoh:
$mysqli = new mysqli("localhost", "root", "qwerty", "mahasiswa");
$result = $mysqli->query("SELECT * FROM mahasiswa");
$row = $result->fetch_assoc();
PDO
PDO (PHP Data Objects), adalah extension atau penambahan fitur dalam PHP yang dirancang sebagai interface
universal untuk pengaksesan berbagai jenis database (tidak hanya MySQL). Contohnya, jika kita menggunakan
PDO dalam menulis kode pemograman, lalu suatu saat website kita bertukar database dari MySQL ke Oracle,
maka kita tidak perlu mengubah semua kode program, cukup mengubah cara pemanggilan PDO diawal program
saja.
Contoh:
$pdo = new PDO('mysql:host=localhost; dbname=mahasiswa', 'root', 'qwerty');
$statement = $pdo->query("SELECT * FROM mahasiswa");
$row = $statement->fetch(PDO::FETCH_ASSOC);
Materi Tambahan
Wordpress