PERTEMUAN 2
Pokok Bahasan :
Register Global On vs Register Global Off
Variabel dan Konstanta
Tipe Data
Operator
Parameter
<?php
echo "<form method=GET action=globalon.php>
Isikan Nama Anda : <input type=text name='nama'>
<input type=submit name=oke value=kirim></form>";
if ($oke){
echo "Nama Anda Adalah : <b>$nama</b>";
}
?>
Ketentuan:
Jadi kalau kita menggunakan setting register global = ON, maka untuk mengambil
data variable cukup menuliskan variable formnya saja tanpa perlu tahu berasal dari mana
variable tersebut. Kelemahannya : misalkan script ini dijalankan di server di mana register
global = OFF, maka script itu tidak akan berjalan.
Output :
Namun sejak versi PHP 4.3.X ke atas, maka default nilai register global = Off,
sehingga apabila skrip globalon.php dijalankan, maka tidak akan menghasilkan apa-apa.
Sehingga agar skripnya dapat berjalan pada register globals = Off, maka perlu
disesuaikan variabelnya menjadi seperti berikut ini :
Contoh penggunaan register global off :
File : globaloff.php
<?php
echo "<form method=GET action=globaloff.php>
Isikan Nama Anda : <input type=text name='nama'>
<input type=submit name=oke value=kirim></form>";
if (isset($_GET['oke'])){
echo "Nama Anda Adalah : <b>$_GET[nama]</b>";
}
?>
Output :
Tips :
Apabila sumber dari variable diambil dari variable yang dibawa Address bar,
misalnya : http://localhost/modul/globalon.php?nama=Amikom , maka penulisan
variabelnya : $_GET[‘nama_variabel’].
Sintaks variable seperti $_ENV, $_GET, $_POST, $_COOKIE, $_SESSION,
$_FILES dan $_SERVER juga sering disebut dengan superglobal atau autoglobal,
artinya variable tersebut dapat berjalan dimanapun, tidak peduli apakah register
globalnya On atau Off.
Catatan:
Beberapa alasan utama mengapa aplikasi yang dibuat/dikembangkan sebaiknya
mengacu berdasarkan register_globals = Off, diantaranya :
1. Security (meminimalisir lubang keamanan yang terbuka) terutama untuk aplikasi yang
membutuhkan input dari user atau aplikasi login (autentikasi). Memang skrip menjadi
lebih panjang dan agak rumit, tapi lebih aman dan tidak membebani server. Sekarang
anda pilih aman atau mudah? Kalau bisa sih dua-duanya, tapi kalu sudah terbiasa gak
terlalu rumit.
2. PHP 4.3X keatas (termasuk PHP5), default setting regisrer globalsnya Off.
3. Sebagian besar server hosting pun sudah mengubah setting register globals di server
mereka menjadi Off.
4. Apabila kita membuat aplikasi berdasarkan register_globals=Off, maka pasti dapat
dijalankan di register_globals=On, tidak sebaliknya.
1.3 Konstanta
Konstanta adalah variabel yang nilainya tetap. Konstanta hanya diberi nilai pada awal
program dan nilainya tidak pernah berubah selama program berjalan. PHP telah
mendefinisikan beberapa konstanta, misalnya: PHP_VERSION, yaitu konstanta yang
Pemrograman Web Lanjut – D3 Manajemen Informatika
UNIVERSITAS AMIKOM YOGYAKARTA 4
PEMROGRAMAN WEB LANJUT -
memberikan informasi tentang versi PHP yang digunakan. Selain konstanta yang telah
disediakan oleh PHP kita juga dapat membuat konstanta sendiri. Aturan penulisan konstanta
adalah sebagai berikut :
define ("NAMA_KONSTANTA","nilai_konstanta");
Perhatikan bahwa dalam pernyataan diatas, NAMA_KONSTANTA tidak diawali
dengan karakter dolar ( $ ), karena karakter dolar hanya digunakan untuk sebuah variabel.
Sebagaimana variabel, konstanta juga yang memiliki aturan yang harus diikuti. Aturan
berikut memastikan kita untuk mendeklarasikan konstanta dengan benar:
a. Tidak boleh didahului oleh karakter dolar.
b. Nama konstanta harus dimulai dengan huruf atau garis bawah ( _ ).
c. Konstanta tidak dapat dideklarasikan ulang dan nilainya tetap.
Sebagaimana variabel, dibutuhkan aturan-aturan khusus untuk memudahkan
memahami alur program kita, cobalah untuk mengikuti cara penulisan konstanta seperti
dibawah ini:
a. Untuk kenyamanan, sebisa mungkin gunakan nama konstanta yang singkat. Karena
pada umumnya konstanta digunakan untuk pilihan pengaturan.
b. Selalu gunakan huruf besar. Ini membantu kita membedakan konstanta dengan
pernyataan lain.
c. Pisahkan setiap suku kata dalam konstanta dengan garis bawah ( _ ). Garis bawah
diperlukan untuk membantu kita membedakan satu konstanta dengan yang lainnya.
Contoh penggunaan konstanta :
File : lat03.php
<html>
<head>
<title>Menggunakan konstanta</title>
<head>
<body>
<?php
define("KAMPUS", "UNIVERSITAS AMIKOM YOGYAKARTA");
define("SLOGAN", "TEMPAT KULIAH ORANG BERDASI");
print "KAMPUS : ".KAMPUS;
echo "<br>SLOGAN : ".SLOGAN;
?>
</body>
</html>
?>
Logika OR ( Konjungsi )
Logika XOR
Logika NOT ( Negasi )
a) Logika AND ( Konjungsi )
Logika AND akan bernilai TRUE jika pernyataan-pernyataan yang menjadi
prasyaratnya bernilai TRUE. Dalam PHP, operator AND disimbolkan dengan tanda &&.
Dibawah ini adalah tabel kebenaran untuk logika AND.
P Q P^Q
T T T
T F F
F T F
F F F
b) Logika OR ( Disjungsi )
Logika OR akan bernilai TRUE jika salah satu pernyataan yang menjadi prasyarat
bernilai TRUE. Dalam PHP, operator OR disimbolkan dengan tanda ||. Dibawah ini adalah
tabel kebenaran untuk logika OR.
P Q PVQ
T T T
T F T
F T T
F F F
P ⌐P
T F
F T
$a += 3;
echo "Variabel \$a saat ini bernilai : ".$a;
?>
<br />
<br />
<?php
$a = 12; // nilai variabel $a dikembalikan menjadi 12
$a++;
echo "Variabel \$a saat ini bernilai : ".$a;
?>
</body>
</html>
</body>
</html>
File : lat09.php
<?php
$nama = $_POST['nama'];
$email = $_POST['email'];
$pesan = $_POST['pesan'];
Method GET adalah sebuah fungsi yang digunakan untuk mengumpulkan nilai dari
sebuah form yang dikirimkan menggunakan metode GET. Informasi yang di kirimkan dari
sebuah form menggunakan metode GET dapat di lihat semua orang, maksudnya adalah nilai
dari form tersebut dapat terlihat dengan jelas pada jendela Address Bar pada browser. Metode
GET tidak cocok untuk nilai variabel yang sangat besar dan tidak bisa menyimpan variabel
nilainya lebih dari 2000 karakter. Untuk melihat perbedaanya, pada lat08.php dan lat09.php
semua method=”POST” menjadi method=”GET”.
Referensi
Arief, M. R. 2011. Pemrograman Web Dinamis menggunakan PHP dan MySQL. Yogyakarta: Andi
Offset.
Solichin, Achmad. Modul Pemrograman Web dengan PHP dan MySQL.
Rajif Agung Yunmar, S.Kom. 2011. Modul Pemrograman PHP Basic. STMIK AMIKOM
Yogyakarta