Selamat Datang
Jangan Lupa Tinggalkan Komentar

Minggu, 17 Oktober 2010

Koneksikan PHP dengan MySQL

Oleh: Agung Novian

Saya menganggap Anda sudah memahami PHP dan MySQL, jika belum silakan mencari literasi lebih lengkap di internet, kunjungi http://www.php.net/ untuk lebih menguasai dasar-dasar PHP, kunjungi pula http://www.mysql.com/ untuk lebih memahami perintah-perintah pada MySQL.

Sekarang Anda akan menuju ke tahap berikutnya yaitu menghubungkan PHP dengan MySQL agar dapat membangun halaman web yang lebih dinamis. Pada pembahasan sebelumnya (viewtopic.php?f=16&t=126), Anda sudah membuat sebuah database dan sebuah tabel dengan nama “tabel_artikel”. Nah, mari kita coba untuk menghubungkan database tersebut dengan PHP.

Buatlah sebuah folder baru di alamat C:\XAMPP\htdocs namai dengan “phpmysql”. Jalankan Notepad++, mulailah mengetikkan script berikut ini:

<?php
/*
Mengumpulkan informasi untuk
konfigurasi dengan database
*/
$mysql_user = 'nama_pengguna';
$mysql_password = 'kata_sandi';
$mysql_database = 'nama_database';
$mysql_host = 'localhost';
?>


Pada pembahasan terdahulu (viewtopic.php?f=16&t=126), Anda sudah pernah mendaftarkan nama pengguna beserta password, dan nama database pada phpMyAdmin. Coba ingat-ingat lagi informasi yang Anda tuliskan, perhatikan script di atas, ubah informasi-informasi untuk: “nama_pengguna”, “kata_sandi”, “nama_database” sesuai dengan yang pernah Anda berikan.

Jika sudah, mari lanjutkan penulisan script nya.

<?php
/*
Mengumpulkan informasi untuk
konfigurasidengan database
*/
$mysql_user = 'agungnovian';
$mysql_password = '123456';
$mysql_database = 'database';
$mysql_host = 'localhost';

/*
Mengkoneksikan dengan MySQL,
jika koneksi gagal maka koneksi akan dimatikan
dan ditampilkan pesan error "mySQL tidak terkoneksi"
*/
$koneksi_sql = @ mysql_connect($mysql_host,$mysql_user,
$mysql_password) or die('mySQL tidak terkoneksi');

/*
memilih sebuah database pada mySQL,
jika koneksi gagal maka koneksi akan dimatikan
dan ditampilkan pesan error "Database tidak terkoneksi"
*/            
$koneksi_database =   mysql_select_db($mysql_database)
         or die('Database tidak terkoneksi');

?>


Simpan dengan nama “latihan1.php”. Coba uji melalui Mozilla Firefox dengan menuliskan http://localhost/phpmysql/latihan1.php pada address bar, jika pada halaman tertulis “mySQL tidak terkoneksi” berarti masih ada kesalahan dalam memasukkan data konfigurasi, perikasa nilai dari variabel $mysql_host, $mysql_user,atau $mysql_password. Refresh halaman browser Anda. Bila kemudian ditampilkan pesan “Database tidak terkoneksi”, maka periksa nilai pada $mysql_database.

Jika pada halaman browser tidak ditampilkan teks apapun, berarti koneksi berhasil. Lengkapi script sehingga seperti ini:

<html>
<head>
</head>
<body>
<?php
/*
Mengumpulkan informasi untuk
konfigurasi dengan database
*/

$mysql_user = 'agungnovian';
$mysql_password = '123456';
$mysql_database = 'databaseku';
$mysql_host = 'localhost';

/*
Mengkoneksikan dengan MySQL,
jika koneksi gagal maka koneksi akan dimatikan
dan ditampilkan pesan error "mySQL tidak terkoneksi"
*/
$koneksi_sql = @ mysql_connect(
         $mysql_host,$mysql_user,$mysql_password)
         or die('mySQL tidak terkoneksi');

/*
memilih sebuah database pada mySQL,
jika koneksi gagal maka koneksi akan dimatikan
dan ditampilkan pesan error "Database tidak terkoneksi"
*/            
$koneksi_database =   mysql_select_db($mysql_database)
         or die('Database tidak terkoneksi');
      
/*
Membuat perintah SQL (query)
untuk memilih isi dari tabel_artikel
*/
$query = "SELECT * FROM tabel_artikel ORDER BY idartikel DESC";

/*
Maksud perintah di atas adalah:
memilih semua field dari tabel_artikel,
diurutkan terbalik berdasarkan fields idartikel
*/

/*Menjalankan query*/
$hasil = mysql_query($query);

/* Jika perintah terlaksana dan memberikan hasil*/
if ($hasil){

   /*Melakukan pengulangan sebanyak data yanh didapat
   dan memecahnya ke dalam larik (array)
   dan menyimpannya ke dalam variabel $data
   */
   while($data = mysql_fetch_array($hasil)){

   /* Mengisi variabel $idartikel
dengan nilai dari larik $data
   pada bagian 'idartikel' */
   $idartikel = $data['idartikel'];

   /* dst... */
   $kategori = $data['kategori'];
   $judul = $data['judul'];
   $isi = $data['isi'];
   $tag = $data['tag'];

   /* menampilan hasil untuk halaman HTML pada elemen DIV */
echo "<div>\n";
echo "ID = ".$id." Judul = ".$judul;
echo " Isi = ".$isi." Tag = ".$tag."\n";
echo "</div>\n";
   }
}

?>
</body>
</html>


Silakan uji coba pada browser Anda.

Menyimpan data dari PHP ke MySQL
Anda sudah bisa mengkoneksikan PHP dengan MySQL dan menampilkan data dari tabel pada MySQL, sekarang tinggal bagaimana cara menyimpan data ke dalam tabel pada MySQL. Untuk keperluan tersebut, Anda membutuhkan sesuatu yang dinamakan form. Dalam HTML elemen form dibuat dengan tag <FORM>. Pada form akan terdapat elemen-elemen lain sebagai media input, untuk keperluan tersebut Anda akan menggunakan tag <INPUT>. Untuk pengenalan awal tentang form, cobalah ketikkan script berikut ini:

<html>
<head>
</head>
<body>
   <form name="namaform" method="post" action="">
   <!-- Membuat label -->
   <label for="input_name">Nama Anda</label>
      
   <!-- Membuat media input berupa textbox -->
   <input type="text" name="input_name" size="35"/>
   <br/>
      
   <!-- Membuat label -->
   <label for="input_sex">Jenis Kelamin</label>
      
   <!-- Membuat media input berupa radio button -->
   <input type="radio" name="input_sex" value="pria"
checked="1"/>Pria
   <input type="radio" name="input_sex"
value="wanita"/>Wanita
   <br/>
      
   <!-- Membuat label -->
   <label for="input_religion">Agama</label>
      
   <!-- Membuat media input berupa combobox -->
   <select name="input_religion"/>
   <!-- Daftar pilihan pada combobox -->
   <option value="pilih" selected >--Pilih Agama—
</option>
   <option value="islam">Islam</option>
   <option value="kristen">Kristen</option>
   <option value="katholik">Katholik</option>
   <option value="hindu">Hindu</option>
   <option value="budha">Budha</option>
   <option value="kepercayaan">Keercayaan</option>
   </select>
   <br/>
      
   <!-- Membuat label -->
   <label for="input_hobby">Hobby</label>
      
   <!-- Membuat media input berupa radio button -->
   <input type="checkbox" name="hobby_read"
value="Membaca" checked="1"/>Membaca
   <input type="checkbox"
name="hobby_write" value="Menulis"/>Menulis
   <input type="checkbox"
name="hobby_calculate" value="Menulis"/>Berhitung
   <br/>
      
   <!-- Membuat label -->
   <label for="input_about">Tentang</label>
      
   <!-- Membuat media input berupa radio button -->
   <textarea name="input_about" cols="30" rows="5"
>Ceritakan mengenai diri Anda</textarea>
   <br/>
      
   <!-- Membuat tombol submit -->
   <input type="submit" name="submit" value="Submit"/>
      
   <!-- Membuat tombol reset -->
   <input type="reset" name="reset" value="Reset"/>
   </form>
   </body>
</html>


Simpan dengan nama “latihan2.php” di alamat C:\XAMPP\htdocs\phpmysql.
Uji coba pada browser Anda.


Dalam mengirimkan data masukan yang diterima, form mempunyai dua metode pengiriman, yaitu POST dan GET. Untuk melihat perbedaanya silakan Anda ganti script di atas, pada bagian:
<form name="namaform" method="post" action="">


Menjadi:

<form name="namaform" method="get" action="">


Simpan ulang berkas “latihan2.php” Uji coba pada browser Anda, masukkan informasi yang diperlukan oleh form, kemudian klik tombol Submit. Coba lihat address bar pada browser Anda, di sana akan tertulis:

http://localhost/phpmysql/latihan2.php?input_name=Agung+Novian&input_sex=pria&input_religion=islam&hobby_read=Membaca&hobby_write=Menulis&input_about=Ceritakan+mengenai+diri+Anda&submit=Submit


Coba ubah kembali “method” dari “get” menjadi “post”.Simpan ulang berkas.Uji coba pada browser Anda, isikan informasi yang diperlukan, klik tombol Submit.Lihat address bar pada browser Anda.

http://localhost/phpmysql/latihan2.php


Sekarang Anda akan mencoba memasukkan data ke database MySQL. Buat dokumen baru di Notepad++, kemudian Anda tuliskan script berikut ini:

<html>
<head>
</head>
<body>
   <?php
   /*Mengkoneksikan database MySQL*/
   $mysql_user = 'agungnovian';
   $mysql_password = '123456';
   $mysql_database = 'databaseku';
   $mysql_host = 'localhost';
   
   $koneksi_sql = @ mysql_connect(
         $mysql_host,$mysql_user,$mysql_password)
         or die('mySQL tidak terkoneksi');
         
   $koneksi_database =   mysql_select_db($mysql_database)
         or die('Database tidak terkoneksi');
   ?>
   <form name="namaform" method="post"
action="latihan3.php">
   
      <label for="input_judul">Judul</label>
   <input type="text" name="input_judul" size="35"/>
   <br/>
      
   <label for="input_kategori">Kategori</label>
   <!-- Membuat media input berupa combobox -->
   <select name="input_kategori"/>
   <!-- Daftar pilihan pada combobox -->
   <option value="pilih" selected
>--Pilih Kategori--</option>
   <option value="1">1</option>
   <option value="2">2</option>
   <option value="3">3</option>
   <option value="4">4</option>
   <option value="5">5</option>
   <option value="6">6</option>
   </select>
   <br/>
      
   <label for="input_isi">Isi</label>
   <textarea name="input_isi" cols="30" rows="5"
></textarea>
   <br/>
      
   <label for="input_tag">Tag</label>
   <input type="text" name="input_tag" size="35"/>
      <br/>
      
   <input type="submit" name="submit" value="Submit"/>
   <input type="reset" name="reset" value="Reset"/>
      <br/>
      <br/>
      <?php
      /* Jika variabel submit diset*/
      if (isset($_POST['submit'])):
         /*
         Mengeset variabel-variabel
         berdasarkan data yang masuk
         melalui metode POST
         */
         $judul = $_POST['input_judul'];
         $kategori = $_POST['input_kategori'];
         $isi = $_POST['input_isi'];
         $tag = $_POST['input_tag'];
         
         /*
         Periksa apakah $judul kosong
         Jika kosong, maka keluar dari PHP
         (PHP tidak akan melanjutkan baris-baris
         yang dituliskan berikutnya)
         */
         if (empty($judul)){
         exit ('Judul tidak boleh kosong');
         }
         
         if (empty($kategori)){
         exit ('Kategori tidak boleh kosong');
         }
         
         if (empty($isi)){
         exit ('Isi tidak boleh kosong');
         }
         
         if (empty($tag)){
         exit ('Tag tidak boleh kosong');
         }
         
         /*
         Query untuk menanmbahkan
baris data baru pada tabel_artikel*/
         $query = "INSERT INTO tabel_artikel
(judul,kategori,isi,tag)VALUE
('$judul','$kategori','$isi','$tag')";
         
         /* Mengirimkan query dan menyimpan hasilnya
         pada variabel $hasil
         */
         $hasil = mysql_query($query);
         
         /*
         Bila proses penambahan data berhasil
         Tuliskan: :"Data berhasil disimpan"
         */
         if ($hasil):
             echo "Data berhasil disimpan";
         endif;
      endif;
      ?>
   </form>
   </body>
</html>


Simpan dengan nama “latihan3.php”. silakan uji coba melalui browser Anda. Isikan informasi yang diminta, klik tombol Submit.Ketikkan http://localhost/phpmysql/latihan1.php pada address bar. Lihat apakah data yang baru saja Anda masukkan benar-benar tersimpan?

Sekian dan terimakasih. Jika terdapat kesalahan dalam penyampaian, dimohon koreksinya.

-----------------------------
Salahm PHP + MySQL

Sekilas MySQL

Oleh: Agung Novian

MySQL adalah perangkat lunak sistem manajemen basis data (database management system, yang biasa disingkat DBMS) yang banyak digunakan untuk sistem aplikasi daring (online). Bila digabungkan dengan PHP, MySQL dan PHP digunakan bersama-sama untuk menciptakan sebuah web yang dinamis. MySQL bisa Anda unduh di: http://www.mysql.com.

MySQL digunakan untuk membuat database sebagai tempat menyimpan informasi agar dapat digunakan dikemudian waktu. Untuk lebih memudahkan Anda memanajemen database MySQL, Anda dapat menggunakan aplikasi phpMyAdmin yang bisa unduh di sini: http://www.phpmyadmin.net. Namun ketika Anda menginstalasi perangkat lunak XAMPP, maka akan otomatis disertakan aplikasi phpMyAdmin ini.

Menggunakan phpMyAdmin
Cobalah jalankan browser Mozilla Firefox Anda, kemudian ketikkan: http://localhost/xampp/. Kemudian klik link “phpMyAdmin” di panel sisi kiri.

Langkah awal setelah masuk ke aplikasi phpMyAdmin sebaiknya adalah membuat daftar pengguna yang diperbolehkan untuk mengakses database yang dibuat pada MySQL.

Membuat Pengguna (User)
Setelah masuk ke halaman phpMyAdmin, klik tab “Privileges” pada bagian atas halaman.

Klik link “Add new User” untuk membuat pengguna baru. Isikan “Login Information”, ketikkan nama Anda pada kotak “User name:”, pilih “Host:” pada “Local”, isikan “Password” dan “Re-type” dengan teks, atau angka, atau symbol, atau gabungan ketiganya, sebagai kata sandi untuk dapat mengakses database (teks pada “Password” dan “Re-type” harus sama).

Pada “Global privileges” klik link “Check All” untuk menandai seluruh hak akses database.

Terakhir klik tombol Go.Periksa bagian atas halaman, jika ditampilkan informasi seperti ilustrasi di bawah ini, berarti pembuatan pengguna baru berhasil.

Membuat Database
Setelah pembuatan pengguna berhasil, sekarang klik link “Database” untuk menciptakan database baru.Ketikkan nama database pada kotak “Create new database”, klik tombol Create.

Setelah itu, Anda akan diminta untuk membuat table pada database yang baru Anda buat tadi. Missal saja Anda akan membuat sebuah table dengan nama “table_artikel”. Pada “table_artikel” akan berisi field atau kolom-kolom diantaranya: “idartikel”, “judul”, “isi”, “tag”. Maka, pada kotak “Name” isikan nama table (missal: table_artikel), dan pada kotak “Number of fields:” isikan angka 4, klik tombol Go.

Isikan kolom-kolom yang tersedia dengan aturan sebagai berikut:

Field        Type     Length/Value     Index            A_I
idartikel    INT      (kosongkan)      PRIMARY          (tandai)
judul          VARCHAR  100             (kosongkan)       (kosongkan)
isi          TEXT    (kosongkan)      (kosongkan)       (kosongkan)
tag          TEXT    (kosongkan)      (kosongkan)       (kosongkan)


Keterangan:

Kolom Keterangan
Field=>Nama field/kolom dalam database
Type=>Tipe data, menunjukkan jenis data yang akan dimasukkan ke dalam record.
Length=>Batasan panjang/ukuran yang diperbolehkan untuk dimasukkan ke dalam record.
Index=>Menentukan kunci field. Primary artinya tidak boleh ada data yang sama untuk dimasukkan ke dalam record
A_I=>Auto Increment, ditandai agar database membuat penomoran otomatis untuk field tertentu (dalam hal ini field idartikel)

Klik tombol Save.

Menambahkan dan Mengedit Baris Data
Setelah pembuatan table berhasil, mari kita coba menambahkan record (baris data) pada tabel tabel_artikel. Klik link “Insert”, ketikkan informasi pada kotak-kotak yang disediakan.

Secara default, phpMyAdmin menyediakan dua record (baris) saat akan menambahkan record, Anda boleh saja mengisi keduanya atau hanya satu baris saja. Jika Anda hanya ingin mengisikan satu baris saja, maka klik tombol Go, pada akhir form pengisian baris pertama. Jika Anda ingin mengisikan dua baris sekaligus, Anda harus mengklik tombol Go di paling bawah halaman.

Pada form pengisian baris pertama, isikan data sebagai berikut:

Field         Value
idartikel    (dikosongkan)
judul        Artikel pertamaku
isi          Ini adalah artikel pertamaku
tag          artikel,pertama,webku


Field idartikel sengaja dikosongkan karena akan otomatis diisi angka berurutan nantinya oleh sistem MySQL.

Setelah semua informasi terpenuhi, klik tombol Go.

Klik tab “Insert” jika ingin menambahkan record baru. Jika kemudian waktu ternyata terdapat isi record yang salah, Anda dapat mengeditnya, yaitu dengan cara mengklik tab “Browser”. Klik gambar pensil pada baris data yang akan diperbaiki. Jika baris data yang akan diperbaiki lebih dari sau, maka tandai checkbox di sisi kiri baris data yang akan diperbaiki, kemudian klik gambar pensil di bagian bawah tabel.

Mengedit Field
Sebagai seorang manusia, tidak akan luput dari lupa. Seperti saya saat ini, lupa untuk menyertakan field “kategori” pada “tabel_artikel”. Bagaimana cara menambahkannya? Klik saja tab “Structure”, pada bagian bawah tabel, tentukan banyaknya field yang akan ditambahkan. Karena saya hanya ingin menambahkan field “kategori” saja, maka pada kotak “Add” biarkan berisi: 1. Saya inigin menambahkan field “kategori” ini nantinya setelah field “idartikel”, maka pada kombo “After”, saya pilih ke “idartikel”, kemudian klik Go.

Cukup kiranya hanya menuliskan “kategori” saja pada kotak “Field”, karena saya ingin membuat field “kategori” dengan tipe “INT”, karena secara default, tipe data akan menunjuk kepada “INT” ketika akan membuat field baru. Terakhir klik tombol Save.

Karena Anda sudah mengganti struktur tabel dan karena sebelumnya pada tabel telah terisi sebuah record, maka Anda harus mengedit isi dari record tersebut. Kilk tab “Browse”, lakukan pengeditan seperti telah dijelaskan sebelumnya. Ganti nilai kategori dari 0 (nol) menjadi 1 (satu).

Mengekspor Tabel
phpMyAdmin menyediakan fasilitas untuk mengekspor tabel. Mengekspor tabel setidaknya dapat digunakan untuk mem-backup tabel, sehingga ketika tabel Anda rusak, Anda mempunyai cadangan untuk mengembalikannya ke kondisi tabel semula.Lebih lanjut, kegunaan ekspor ini adalah untuk memindahkan tabel antar database dan antar host.

Klik tab “Export” untuk memulai, sepertinya tidak perlu melakukan perubahan nilai standard yang diperlukan, cukup gulung saja halaman ke sisi paling bawah, kemudian tandai “Save as file”, klik tombol Go.

Anda akan dibuatkan sebuah file dengan nama “tabel_artikel” berekstensi *.sql. coba buka file tersebut, apa isinya? Berupa perintah-perintah dalam struktur bahasa SQL ya? Seperti berikut:

SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";

CREATE TABLE IF NOT EXISTS `tabel_artikel` (
  `idartikel` int(11) NOT NULL AUTO_INCREMENT,
  `kategori` int(11) NOT NULL,
  `judul` varchar(100) NOT NULL,
  `isi` text NOT NULL,
  `tag` text NOT NULL,
  PRIMARY KEY (`idartikel`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=2 ;

INSERT INTO `tabel_artikel` (`idartikel`, `kategori`, `judul`, `isi`, `tag`) VALUES
(1, 1, 'Artikel pertamaku', 'Ini adalah artikel pertamaku', 'artikel,pertama,webku');


Mengimpor Tabel
Ada ekspor berarti ada impor.Kalau ekspor berguna untuk mem-backup database atau tabel, maka ekspor tentu saja kebalikannya, yaitu untuk me-restore (mengembalikan) tabel. Lebih lanjut fungsi ekspor ini digunakan untuk menambahkan tabel atau baris data.

Klik tab “Import”, pada kotak “File to import”, klik tombol “Browse”, untuk pengujian, pilih file “tabel_artikel.sql” yang baru saja dibuat melalui proses ekspor. Klik tombo, Go untuk memproses.

Oh, ternyata terjadi kesalahan, kenapa bisa begini? Karena pada database sudah ada tabel dengan nama “tabel_artikel”, cobalah untuk menghapus “tabel_artikel” kemudian lakukan proses impor sekali lagi.

Bagaimana cara menghapus tabel? Klik link “Database : databaseku”, di sisi atas halaman, setelah itu klik tombol bergambar X (delete) pada baris nama tabel yang akan dihapus. Ketika ditampilkan kotak konfirmasi, klik tombol OK.

Mengekspor Tabel
Satu lagi fitur yang disediakan phpMyAdmin adalah SQL query.Anda bisa langsung memasukan perintah (query) SQL kemudan memprosesnya. Untuk menggunakannya, silakan klik tab “SQL”, kemudian tuliskan perintah SQL pada kotak yang disediakan, terakhir klik tombol Go. Sebagai contoh, ketikkan perintah SQL berikut ini:

INSERT INTO tabel_artikel (kategori, judul, isi, tag) VALUES
(2, 'artikel kedua', 'Ini adalah artikel keduaku', 'artikel,kedua,webku');


Saya rasa cukup pembahasan mengenai phpMyAdmin.Silakan eksplorasi kemampuan phpMySQL sendiri agar Anda lebih menguasi fitur-fitur yang dimiliki phpMyAdmin. Mohon maaf bila ada kekurangan, bila ada penyampaian yang salah mohon dikoreksi.

------------------------------
Salam MySQL...

Sekilas PHP

Oleh: Agung Novian

PHP Hypertext Preprocessor adalah bahasa pemograman web yang berjalan di sisi server (server-side), maksudnya bahwa perintah-perintah yang dituliskan akan sepenuhnya dijalankan oleh server, sebelum akhirnya dikembalikan kepada pengakses dalam bentuk berkas HTML utuh. PHP banyak digunakan oleh para web programmer untuk menciptakan sebuah halaman web yang dinamis. Agar tercipta halaman web yang dinamis, dimana halaman-halaman diambil dari data yang telah disimpan, PHP biasanya digabungkan dengan database MySQL. MySQL digunakan sebagai penampung data, seperti artikel, berita, dan data lainnya, sementara PHP mengakses MySQL untuk mengambil dan menyimpan data.

Untuk memulai menuliskan script PHP, harus dituliskan tanda khusus sebagai pembuka dan penutup script tersebut, yaitu:

<?php
............
Baris perintah PHP
............
?>


Atau:

<?
............
Baris perintah PHP
............
?>


Sebagai contoh, buatlah folder baru di alamat C:\XAMPP\htdocs dengan nama “contoh-php”. Jalankan Notepad++, ketikkan script berikut ini:

<html>
<head>
</head>
<body>
    Baris pertama ditulis dg HTML biasa <br/>
<?php
     /*
     kata kunci "\n" dimaksudkan agar  pada kode sumber HTML
     teks yang berikutnya dituliskan pada baris berikutnya
     misal:
     baris 1: Baris ke dua ditulis dg script PHP<br/>
     baris 2: Baris ke dua ditulis dg script PHP<br/>
     */
      echo "Baris ke dua ditulis dg script PHP<br/>\n";
    ?>
<?php echo "Baris ke dua ditulis dg script PHP<br/>\n"; ?>
</body>
</html>


Simpan dengan nama “Latihan1.php”. Jalankan Mozilla Firefox, tuliskan: http://localhost/contoh-php/latihan1.php pada address bar. Lihat hasilnya!


Fungsi dalam PHP
Fungsi dimaksudkan untuk mengkoleksi beberapa baris perintah sekaligus, kemudian diberi identitas berupa nama fungsi, tujuannya agar beberapa baris perintah yang terkoleksi tersebut dapat digunakan secara berulang-ulang (ketika diperlukan), sehingga tidak perlu menuliskan baris-baris perintah serupa.

Rutin untuk mendeklarasikan sebuah fungsi di PHP adalah:

function namafungsi([parameter1][,parameter2][,parametern])
{
perintah-perintah;
[return $namavariabel];
}


Deklarasi fungsi pada PHP bersifat dinamis.Anda bisa membuat fungsi dengan atau tanpa parameter, juga dapat membuat fungsi dengan atau tanpa nilai kembali (return value).
Berikut ini contoh-contoh deklarasi fungsi:

1. Fungsi tanpa parameter dan tanpa nilai kembali

function tulis(){
$teks = "Saya programmer";
echo $teks;
}


2. Fungsi tanpa parameter dengan nilai kembali:

function tulis(){
$teks = "Saya programmer";
return $teks;
}


3. Fungsi dengan parameter tanpa nilai kembali

function tulis($teks){
echo $teks;
}


function jumlahkan($angka1, $angka2){
$jumlah = $angka1 + $angka2
echo $jumlah;
}


4. Fungsi dengan parameter dan dengan nilai kembali

function tulis($teks){
return $teks;
}


function jumlahkan($angka1, $angka2){
$jumlah = $angka1 + $angka2
return $jumlah;
}


Saat membuat suatu fungsi, memungkinkan sekali untuk mendeklarasikan sesuatu yang dinamakan variabel.Variabel adalah suatu carauntuk menyimpan data sementara, baik itu berupa data masukan maupun data keluaran, sebelum dilakukan proses selanjutnya.

Missal, untuk melakukan proses penjumlahan, terlebih dahulu Anda menyimpan data inputan yaitu angka-angka yang kana dijumlahkan nantinya, maka dalam PHP akan dituliskan seperti ini:

<?php
/*
$angka1 dan $angka2 merupakan variabel
untuk menyimpan nilai sementara
*/

$angka1 = 10;
$angka2 = 20;

/*
setelah teridentifikasi
variabel $angka1 dan $angka2 akan diproses
dan hasil proses disimpan pada variabel $hasil
*/

$hasil = $angka1 + $angka2;

/*
sekarang tinggal menampilkan hasilnya
pada halaman web
*/

echo $hasil;
?>


Struktur-Struktur dalam PHP
Tak mungkin rasanya jika sebuah bahasa pemograman tidak mempunyai struktur-struktur seperti: struktur pengambilan keputusan, struktur pemilihan, struktur pengulangan, dan lainnya. Demikian pula PHP, tentunya memiliki struktur-struktur tersebut.

1. Struktur Pengambilan Keputusan
Struktur pengambilan keputusan atau biasa disebut struktur percabangan dimaksudkan untuk menentukan perintah yang akan dikerjakan selanjutnya bila telah memenuhi suatu kondisi yang sudah ditentukan. Terdapat dua pilihan untuk mendeklarasikan struktur pengambilan keputusan, yaitu: if dan switch.

a. if
Struktur ini digunakan untuk mejalankan satu atau beberapa perintah (blok perintah) bila suatu kondisi terpenuhi. Bagaimana bila kondisi tidak terpenuhi? Itu dikembalikan kepada si pemogram, apakah akan dilakukan pengujian berikutnya atau langsung menghentikan pengujian.

Beberapa bentuk penulisan struktur if:

- if tunggal
Struktur if tunggal hanya menguji suatu kondisi sekali saja. Jika kondisi terpenuhi maka kerjakan blok perintah yang telah ditentukan.

if (kondisi){
[Blok perintah jika syarat terpenuhi]
}


Bentuk penulisan lain:

if (kondisi):
[Blok perintah jika syarat terpenuhi]
Endif;



- if bersarang
Struktur if bersarang membagi pengujian menjadi beberapa kondisi. Jika kondisi pertama terpenuhi maka kerjakan blok perintah yang telah ditentukan, jika kondisi pertama tidak terpenuhi, maka kerjakan blok perintah lainnya: kedua, ketiga, dan seterusnya.

if (kondisi){
[Blok perintah jika kondisi terpenuhi]
} else {
[Blok perintah jika kondisitidak terpenuhi]
}


Bentuk penulisan lain:

if (kondisi):
[Blok perintah jika kondisiterpenuhi]
Else:
[Blok perintah jika kondisitidak terpenuhi]
endif;



atau:

if (kondisi1){
[Blok perintah jika kondisi1 terpenuhi]
} elseif(kondisi2){
[Blok perintah jika kondisi2 terpenuhi]
} elseif(kondisin){
[Blok perintah jika kondisi ke-n terpenuhi]
} else {
[Blok perintah jika semua kondisi tidak terpenuhi]
}


Bentuk penulisan lain:

if (kondisi1):
[Blok perintah jika kondisi1 terpenuhi]
elseif(kondisi2):
[Blok perintah jika kondisi2 terpenuhi]
elseif(kondisin):
[Blok perintah jika kondisi ke-n terpenuhi]
else:
[Blok perintah jika semua kondisi tidak terpenuhi]
endif;



Kondisi merupakan suatu perbandingan, jika kondisi bernilai benar maka perintah setelah pengujian akan dikerjakan. Perbandingan kondisi dinyatakan dengan menggunakan operator pembanding, yaitu:

Operator      Keterangan                     Contoh
==           Sama dengan                    ($a == $b)
!=           Tidak sama dengan              ($a != $b)
<>           Tidak sama dengan              ($a <> $b)
>           Lebih besar dari               ($a > $b)
<           Lebih kecil dari               ($a < $b)
>=           Lebih besar atau sama dengan   ($a >= $b)
<=           Lebih kecil atau sama dengan   ($a <= $b)


Adakalanya saat pengujian juga menggunakan operator logika, seperti: and, or, atau not. Berikut ini operator logika pada PHP:

Operator    Keterangan         Contoh
&&         Logika and (dan)   ($status == 'menikah' && $anak>= 1)
||         Logika or (atau)   ($usia>= 17 || $status != 'menikah')
!         Logika not (tidak)   !($JK == 'pria')


Ayo kita coba struktur pengambilan keputusan. Jalankan Notepad++, buat dokumen baru, ketik script di bawah ini:

<?php
/* menentukan hak akses
berdasarkan jenis pengguna
*/

$user = 'admin';

echo "Karena Anda seorang ".$user." maka Anda ";

if ($user != 'admin'):
echo "tidak boleh masuk";
else:
echo "boleh masuk";
endif;

?>


Simpan dengan nama “latihan-if1.php” Uji coba pada browser Anda. Ketikkan http://localhost/contoh-php/latihan-if1.php.

Kembali ke berkas “latihan-if1.php” pada editor Notepad++, ganti:

$user = 'admin';


menjadi:

$user = 'pengunjung';


Uji coba kembali pada browser Anda.Masih belum mengerti?Ingin coba lagi contoh lainnya? Silakan ketikkan script berikut ini:

<?php
/* menentukan kegiatan
berdasarkan warna lampu
*/


$lampu = 'merah';

if ($lampu == 'merah'){
echo "berhenti";
} elseif ($user == 'kuning') {:
echo "hati-hati";
} else {
echo "jalan";
}

?>


Simpan dengan nama “latihan-if2.php” Uji coba pada browser Anda. Ketikkan http://localhost/contoh-php/latihan-if2.php.

b. switch
switch sebenarnya adalah bentuk lain dari struktur if yang biasanya digunakan bila terlalu banyak kondisi yang akan diuji. Bentuk penulisan struktur switch adalah:

switch (variabel){
case (kondisi1):
    [Blok perintah jika kondisi1 tidak terpenuhi]
break;
case (kondisin):
    [Blok perintah jika kondisi ke-n tidak terpenuhi]
break;
default: //kondisi selain kondisi1 atau kondisi ke-n
    [Blok perintah kondisi lain]
break;
}


Contoh 1:


<?php
/* menentukan harga buah-buahan
Berdasarkan jenis data yang dimasukkan
*/

switch ($buah){
case ('apel'):
$harga = 10000;
break;
case ('melon'):
$harga = 5000;
break;
default:
$harga = 0;
break;
}
echo "Harga buah ".$buah." per ons: ".$harga;

?>


Contoh 2:


<?php
/* menentukan keterangan jarak
dengan memilih interval tertentu
*/

switch ($jarak) {

case ($jarak< 1):
echo "Terlalu dekat";
break;

case ($jarak>10):
echo "Lumayan jauh!";
break;

case ($jarak>20):
echo "Terlalu jauh";
break;
}

?>


2. Struktur Pengulangan
Struktur pengulangan adalah struktur yang digunakan untuk mengeksekusi perintah selama, suatu kondisi terpenuhi.Atau dapat pula eksekusi perintah ini dilakukan berulang-ulang sebanyak batasan yang sudah ditentukan.

a. While
While akan memaksa program untuk melakukan pengulangan selama suatu kondisi masih memenuhi syarat. Program akan berhenti melakukan perintah-perintah saat menemui kondisi yang menyimpang dari kondisi yang telah ditentukan.

Beberapa bentuk penulisan struktur while:
- do … while

do {
[perintah];
[break;|continue;]
[perintah];
} while (kondisi);


- while

While (kondisi){
[perintah];
[break;|continue;]
[perintah];
}


Bentuk lain:

While (kondisi):
[perintah];
[break;|continue;]
[perintah];
endwhile;


Contoh 1:

<?php
/* melakukan pengulangan selama
nilai dari $a lebih kecil atau sama dengan 10 */
$a = 0;
do {
echo $a++;
} while ($a <= 10);

?>


Contoh 2:

<?php
/* melakukan pengulangan selama
nilai dari $a lebih kecil atau sama dengan 10
dan akan dihentikan ketika $a mencapai nilai 6
*/

$a = 0;
while ($a <= 10){
echo $a++;
   if ($a == 6){
   break;
   }
}

?>


b. for

Jika pada bahasa pemograman lain pengulangan for … adalah struktur pengulangan yang telah diketahui banyaknya pengulangan yang akan dilakukan (telah ditentukan awal dan akhir pengulangan), pada PHP pengulangan for bisa melakukan pengulangan tanpa harus ditentukan awal dan akhir dari indeks pencacahnya. Bentuk penulisan for sebagai berikut:

for (ekspresi1; ekspresi2; ekspresi3) {
perintah
}


Contoh 1:

Quote:
<?php
/* melakukan pengulangan dimulai dari 1 ($i =1)
selama $i tidak lebih dari 10
hasil dari pengulangan berupa penjumlahan ($i++)
*/

for ($i = 1; $i <= 10; $i++) {
echo $i;
}

?>


Contoh 2:

<?php
/* melakukan pengulangan dimulai dari 100 ($i = 100)
hasil dari pengulangan berupa pengurangan ($i--)
jika $i sudah mencapapai nilai 80
maka pengulangan dihentikan
*/

for ($i = 100;; $i--) {
if ($i <=80) {
        break;
    }
    echo $i;
}

?>


Contoh 3:

<?php
/*
menentukan lebih dulu awal pengulangan-
di luar struktur for
*/

$i = 0;

for (; ;) {
/*
jika nilai $1 lebih besar dari 5
maka pengulangan dihentikan
*/

    if ($i > 5) {
        break;
    }
   
    echo $i;

/*
hasil dari pengulangan berupa penjumlahan ($i++)
*/
    $i++;

}

?>


c. foreach
foreach adalah pengulangan dengan sumber data dari suatu larik (array). Pengulangan akan dilakukan sebanyak jumlah data yang terdaftar pada larik (array) tersebut. Karena sumber datanya berasal dari array, maka Anda harus membuat daftar array lebih dulu.

Adapun bentuk struktur foreach sebagai berikut:

foreach (larik as $nilai)
[Blok perintah]


Atau:

foreach (larik as $nilai as $kunci => $nilai)
[Blok perintah]


Contoh 1:

<?php
/*
mendaftarkan larik (array) pada variabel$larik
*/
$larik = array(24, 9, 19, 82);

foreach ($larik as $nilai) {
echo $nilai.",";
}

/* menghapus/membersihkan larik*/
unset($nilai);
?>


Contoh 2:

<?php
/*
mendaftarkan larik (array) pada variabel $larik
*/
$larik = array("minggu","senin", "selasa",
               "rabu", "kamis", "jum'at", "sabtu");

foreach ($larik as $harike => $namahari) {
/*
karena larik (array) dimulai dari 0 (nol)
maka agar '$harike' dimulai dari 1,
hasil dari $harike ditambahkan 1
*/
$harike +=1;
    echo "Hari ke : $harike;
Nama Hari: $namahari<br />\n";
}
?>


Itulah sedikit pembahasan mengenai PHP, sekali lagi saya mohon maaf jika tidak membahas PHP secara panjang lebar. Silakan bila ingin menambahkan. Bila ada kesalahan dalam penyampaian, mohon dikoreksi.

--------------------------------
Salam PHP