SlideShare a Scribd company logo
10 Penyebab Error Program PHP yang Paling Sering Ditemui | Achmatim.Net



       10 Penyebab Error Program PHP
         yang Paling Sering Ditemui
                          Tutorial ini ditulis oleh Achmad Solichin
        dan sudah dipublikasikan di http://achmatim.net pada tanggal 28 Oktober 2012




Bagi kita yang sudah malang-melintang di dunia programming, termasuk PHP, tentunya
sudah tidak asing lagi dengan yang namanya "error" di dalam program. Ibaratnya itu sudah
menjadi kudapan sehari-hari. Hehe. Sedangkan bagi kita yang baru terjun di dunia
programming, terutama PHP, seringkali "error" merupakan sesuatu yang menakutkan dan
membingungkan. Banyak yang akhirnya nyerah dengan programming. Tahun 2008 lalu, saya
pernah menulis artikel di website ini mengenai tingkatan error dalam program 1. Terdapat 3
(tiga) tingkatan error program yaitu error tata bahasa (sintaks), error runtime dan error
logika. Dari ketiga jenis error program tersebut, sebenarnya yang paling mudah ditangani
adalah error yang pertama yaitu error tata bahasa (sintaks) karena compiler atau
interpreter langsung memberitahukannya saat program dikompilasi atau dijalankan. Namun
demikian, tetap saja diperlukan pengalaman, ketelitian dan kegigihan dalam menangani
atau mencari penyebab error yang muncul.
Dalam tutorial ini, berdasarkan pengalaman selama menjadi programmer dan mengajar di
Universitas Budi Luhur2, saya mencoba mengumpulkan berbagai macam error program PHP
yang paling sering ditemui oleh programmer, terutama yang masih dalam tahap belajar.
Setidaknya saya menyajikan 19 macam error program PHP yang terbagi menjadi 10 kategori
berdasarkan penyebabnya masing-masing. Untuk setiap error program, disertakan contoh
program sederhana yang disertai penjelasan solusi dan cara menangani error yang muncul.
Kenapa 19 macam dan 10 kategori? Karena artikel ini mulai ditulis pada tanggal 19-10-2012
bertepatan dengan Hari Ulang Tahun ke-4 putra tercinta Muhammad Lintang. :)

1   http://achmatim.net/2008/11/17/mengenal-error-dalam-program/
2   http://www.budiluhur.ac.id

                                                                             Halaman 1 dari 15
10 Penyebab Error Program PHP yang Paling Sering Ditemui | Achmatim.Net


Diharapkan dengan tutorial ini, kita semua akan terbantu dalam memperbaiki berbagai
error program PHP yang mungkin ditemui saat membuat program. Memang untuk menjadi
terbiasa menghadapi berbagai error program, diperlukan proses pembelajaran dan
pengalaman yang cukup banyak. Oleh karena itu, perbanyaklah belajar dan mencoba
sebanyak-banyaknya program jika Anda ingin menguasai pemrograman web dengan PHP.
Semoga tutorial ini bermanfaat untuk kita semua.

1. Kurang Titik-Koma
Jenis error program ini merupakan error yang paling sering ditemui. Penyebabnya karena
kurang menambahkan titik-koma ( ; ) pada akhir suatu perintah (statement). Solusi dalam
mencari letak kesalahan programnya membutuhkan kejelian dan ketelitian. Namun
demikian, umumnya akan ditunjukkan baris dimana error tersebut muncul. Mulailah dari
baris tersebut, namun tidak selamanya penyebab kesalahan berada pada baris yang
ditunjukkan. Terkadang penyebab kesalahan justru berada di baris atas atau sebelumnya.
Berikut ini beberapa contoh program beserta tampilan error yang akan muncul jika
program dijalankan:
Contoh Program 1.1
  1    <?php
  2    $nim = "1111500111";
  3    $nama = "Achmad Solichin"
  4    echo $nim;
  5    echo $nama;
  6    ?>


Jika program di atas dijalankan maka akan ditampilkan error sebagai berikut:

Parse error: syntax error, unexpected T_ECHO in
/home/achmatim/public_html/artikel_demo/error-php/error1.1.php on line 4

Baris yang ditunjukkan pada tampilan error di atas adalah baris ke-4, namun jika
diperhatikan program 1.1 di atas ternyata penyebab error justru bukan di baris ke-4.
Penyebab error berada pada baris 3, dimana statement tidak diakhiri dengan titik-koma ( ; ).
Mengapa PHP justru menunjuk ke baris 4? Hal ini disebabkan karena proses pemeriksaan
sintaks oleh PHP dilakukan secara berurutan (sekuensial) dari baris pertama hingga terakhir.
Pada baris ketiga belum terjadi error, namun statement masih memerlukan adanya titik-
koma ( ; ). Saat PHP berada di baris 4, bukan titik-koma ( ; ) yang ditemukan, namun justru
perintah “echo”, sehingga disinilah PHP akan menunjukkan errornya. PHP tidak akan
mengetahui penyebab errornya dimana, namun PHP akan menunjukkan pada baris mana
error mulai terjadi. Tips: periksa program pada baris yang ditunjukkan oleh pesan error, jika
tidak ditemukan, periksa baris atasnya. Demikian dan seterusnya hingga penyebab error
ditemukan.



                                                                               Halaman 2 dari 15
10 Penyebab Error Program PHP yang Paling Sering Ditemui | Achmatim.Net


Contoh Program 1.2
  1    <?php
  2    $user = "achmatim";
  3    $pass = "123"
  4    if ($user == "achmatim" && $pass == "123") {
  5          echo "Login Berhasil";
  6    } else {
  7          echo "Login Gagal";
  8    }
  9    ?>


Jika program di atas dijalankan maka akan ditampilkan error sebagai berikut:

Parse error: syntax error, unexpected T_IF in
/home/achmatim/public_html/artikel_demo/error-php/error1.2.php on line 4

Sama seperti program 1.1, penyebab errornya adalah kurang titik-koma. Pada program 1.1,
letak kesalahan diikuti dengan perintah echo sehingga pesan kesalahan mengatakan
“unexpected T_ECHO”. Sedangkan pada program 1.2, letak kesalahan diikuti dengan
perintah if, sehingga pesan kesalahan yang ditampilkan adalah “ unexpected T_IF”. Dari
pesan kesalahan tersebut, kita dapat mengetahui letak kesalahan pasti berada sebelum
perintah if, tepatnya pada baris ke-3, statement tidak diakhiri dengan titik-koma ( ; ).


Contoh Program 1.3
  1    <?php
  2    $day = date ("D")
  3    switch ($day) {
  4          case 'Sun' : $hari = "Minggu"; break;
  5          case 'Mon' : $hari = "Senin"; break;
  6          case 'Tue' : $hari = "Selasa"; break;
  7          case 'Wed' : $hari = "Rabu"; break;
  8          case 'Thu' : $hari = "Kamis"; break;
  9          case 'Fri' : $hari = "Jum'at"; break;
 10          case 'Sat' : $hari = "Sabtu"; break;
 11          default : $hari = "Kiamat";
 12    }
 13    echo "Hari ini hari <b>$hari</b>";
 14    ?>


Jika program di atas dijalankan maka akan ditampilkan error sebagai berikut:

Parse error: syntax error, unexpected T_SWITCH in
/home/achmatim/public_html/artikel_demo/error-php/error1.3.php on line 3



                                                                               Halaman 3 dari 15
10 Penyebab Error Program PHP yang Paling Sering Ditemui | Achmatim.Net


Seperti dua contoh sebelumnya, jelas bahwa pada program 1.3 letak kesalahan berada
sebelum perintah switch, tepatnya pada baris ke-2, statement tidak diakhiri dengan titik-
koma ( ; ). Jadi, jika muncul pesan kesalahan yang mirip seperti di atas, langsung saja cari
perintah switch dan perhatikan baris perintah sebelumnya.


Contoh Program 1.4
  1    <?php
  2    /* contoh 1 */
  3    $i = 1
  4    while ($i <= 10) {
  5          echo $i++;
  6    }
  7    ?>


Jika program di atas dijalankan maka akan ditampilkan error sebagai berikut:

Parse error: syntax error, unexpected T_WHILE in
/home/achmatim/public_html/artikel_demo/error-php/error1.4.php on line 4

Pada contoh program 1.4 di atas, letak kesalahan berada tepat di atas perintah while,
tepatnya di baris ke-3. Statement seharusnya diakhiri dengan titik-koma.


Contoh Program 1.5
  1    <?php
  2    function cetak_ganjil ($awal, $akhir) {
  3          for ($i=$awal; $i<$akhir; $i++) {
  4               if ($i%2 == 1) {
  5                     echo "$i ";
  6               }
  7          }
  8    }
  9    //pemanggilan fungsi
 10    $a = 10;
 11    $b = 50;
 12    echo "<b>Bilangan ganjil dari $a sampai $b : </b><br>"
 13    cetak_ganjil($a, $b);
 14    ?>


Jika program di atas dijalankan maka akan ditampilkan error sebagai berikut:

Parse error: syntax error, unexpected T_STRING, expecting ',' or ';' in
/home/achmatim/public_html/artikel_demo/error-php/error1.5.php on line 13



                                                                               Halaman 4 dari 15
10 Penyebab Error Program PHP yang Paling Sering Ditemui | Achmatim.Net


Pada contoh program 1.5 di atas, sudah jelas bahwa letak kesalahannya pada baris ke-12
dimana statement tidak diakhiri titik-koma. Error dengan pesan “ unexpected T_STRING”
perlu dicermati dengan lebih teliti karena error tidak hanya terjadi karena kurangnya titik-
koma, namun dapat juga karena kurang koma ( , ) atau operator penggabungan string
berupa titik ( . ). Namun demikian, umumnya terjadi karena penulisan string yang tidak
lengkap.


Contoh Program 1.6
  1    <?php
  2    echo "test"
  3    function cetak_ganjil ($awal, $akhir) {
  4          for ($i=$awal; $i<$akhir; $i++) {
  5               if ($i%2 == 1) {
  6                     echo "$i ";
  7               }
  8          }
  9    }
 10    //pemanggilan fungsi
 11    $a = 10;
 12    $b = 50;
 13    echo "<b>Bilangan ganjil dari $a sampai $b : </b><br>";
 14    cetak_ganjil($a, $b);
 15    ?>


Jika program di atas dijalankan maka akan ditampilkan error sebagai berikut:

Parse error: syntax error, unexpected T_FUNCTION, expecting ',' or ';'
in /home/achmatim/public_html/artikel_demo/error-php/error1.6.php on line 3

Contoh program 1.6 di atas mirip dengan contoh program sebelumnya, hanya saja letak
kesalahannya sekarang berada pada baris ke-2, sebelum pendefinisian fungsi. Pada baris
tersebut, seharusnya diakhiri dengan titik-koma ( ; ).


Contoh Program 1.7
  1    <?php
  2    $nim = "0411500400";
  3    $nama = 'Chotimatul Musyarofah';
  4    $umur = 23;
  5    $nilai = 82.25;
  6    $status = TRUE;
  7    echo "NIM : " . $nim . "<br>";
  8    echo "Nama : $nama<br>";
  9    print "Umur : " . $umur; print "<br>";
 10    printf ("Nilai : %.3f<br>", $nilai);


                                                                               Halaman 5 dari 15
10 Penyebab Error Program PHP yang Paling Sering Ditemui | Achmatim.Net


 11
 12 if ($status)
 13      echo "Status : Aktif"
 14 else
 15      echo "Status : Tidak Aktif";
 16 ?>


Jika program di atas dijalankan maka akan ditampilkan pesan kesalahan sebagai berikut:

Parse error: syntax error, unexpected T_ELSE, expecting ',' or ';' in
/home/achmatim/public_html/artikel_demo/error-php/error4.1.php on line 14

Letak kesalahan pada contoh program 1.7 bukanlah pada baris ke-14 seperti ditunjukkan di
atas, namun terletak di baris ke-13 (sebelum perintah ELSE) dimana statement tidak diakhiri
dengan titik-koma.

2. Kekurangan atau Kelebihan Kutip
Penyebab error program yang kedua berkaitan dengan tanda kutip, baik kutip tunggal (')
maupun kutip ganda (“). Seperti kita ketahui bahwa di PHP, string dapat dituliskan dengan
diapit oleh tanda kutip tunggal (') dan kutip ganda (“). Error program akan terjadi jika
penyajian tanda kutip yang tidak tepat, misalnya tidak ditutup (kurang kutip) atau kelebihan
kutip.
Berikut ini beberapa contoh program PHP yang error karena permasalahan tanda kutip:
Contoh Program 2.1
  1    <?php
  2    $nim = "0411500400;
  3    $nama = 'Chotimatul Musyarofah';
  4    echo "NIM : " . $nim . "<br>";
  5    echo "Nama : $nama";
  6    ?>


Jika program di atas dijalankan maka akan ditampilkan pesan kesalahan sebagai berikut:

Parse error: syntax error, unexpected T_STRING in
/home/achmatim/public_html/artikel_demo/error-php/error2.1.php on line 4

Perhatikan contoh program 2.1 di atas. Pesan kesalahan menunjuk pada baris ke-4, tetapi
penyebab kesalahan justru ada di baris ke-2. Hal tersebut terjadi karena pada baris ke-2
terdapat string yang dibuka dengan kutip ganda (“) namun tidak ada penutup atau
pasangannya. Pada proses kompilasi, PHP akan memeriksa sintaks program secara
berurutan. Saat ditemukan tanda kutip, maka program akan menganggap teks berikutnya
sebagai sebuah string hingga ketemu pasangannya. Seperti pada contoh program 2.1 di
atas, program tidak menemukan pasangan dari kutip ganda (“) yang ada di baris kedua pada

                                                                              Halaman 6 dari 15
10 Penyebab Error Program PHP yang Paling Sering Ditemui | Achmatim.Net


baris yang sama, namun justru ditemukan kutip ganda (“) pada baris ke-4. Kutip ganda pada
baris keempat dianggap sebagai pasangan (penutup) kutip ganda pada baris kedua. Setelah
ditemukan penutup dari kutip tersebut, maka program akan menganggap bahwa penyajian
string (statement) sudah lengkap dan harus ditutup dengan titik-koma atau operator
penggabungan string. Ternyata program tidak menemukan penutup statement setelahnya,
sehingga terjadilah error di baris ke-4.
Untuk mengatasi error pada program 2.1 di atas tentunya cukup dengan menambahkan
kutip ganda sebelum titik-koma pada baris kedua. Menemukan letak kesalahan yang
berkaitan dengan tanda kutip memang terkadang agak sulit dilakukan, terutama pada
program yang cukup panjang. Letak kesalahan seringkali berada pada baris yang sama
sekali berbeda dengan petunjuk pada pesan kesalahannya. Oleh karena itu, pemahaman
terhadap penanganan string menjadi cukup penting dan sangat membantu kita dalam
menemukan letak kesalahan dengan cepat. Jika perlu, pelajari kembali buku gratis
Pemrograman Web dengan PHP & MySQL3 terutama Bab 6 mengenai String dan Tanggal.
Selain itu, penggunaan editor program yang baik dan sesuai juga sangat membantu
menemukan kesalahan dengan cepat, karena pada umumnya editor memiliki pewarnaan
yang berbeda antara string, nama variabel maupun perintah bawaan PHP. Sebagai contoh,
bandingkan contoh program 1.7 dan 2.1 di atas. Perintah echo pada program 1.7 semuanya
berwarna merah, namun perintah echo pada program 2.1 berwarna biru. Hal tersebut
menunjukkan bahwa pada program 2.1 pasti terjadi kesalahan.
Contoh Program 2.2
    1   <?php
    2   $nim = "0411500400";
    3   $nama = 'Chotimatul Musyarofah;
    4   echo "NIM : " . $nim . "<br>";
    5   echo "Nama : $nama";
    6   ?>


Jika program di atas dijalankan maka akan ditampilkan pesan kesalahan sebagai berikut:

Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE in
/home/achmatim/public_html/artikel_demo/error-php/error2.2.php on line 3

Penyebab error pada program 2.2 di atas sudah cukup jelas, yaitu kurangnya pasangan
tanda kutip tunggal ( ' ) pada baris ketiga. Sama seperti error pada program sebelumnya,
kita juga dapat menganalisa kesalahan program dengan memperhatikan warna source code
yang ditampilkan oleh editor.
Contoh Program 2.3
    1   <?php
    2   $nim = 0411500400";
    3   $nama = 'Chotimatul Musyarofah';

3   http://achmatim.net/2009/04/15/buku-gratis-pemrograman-web-dengan-php-dan-mysql/

                                                                                       Halaman 7 dari 15
10 Penyebab Error Program PHP yang Paling Sering Ditemui | Achmatim.Net


  4    echo "NIM : " . $nim . "<br>";
  5    echo "Nama : $nama";
  6    ?>

Jika program di atas dijalankan maka akan ditampilkan pesan kesalahan sebagai berikut:

Parse error: syntax error, unexpected '"' in
/home/achmatim/public_html/artikel_demo/error-php/error2.3.php on line 2

Perhatikan baris kedua program 2.3 di atas. Terlihat bahwa nilai dari variabel $nim bertipe
string, sehingga harus diapit dengan tanda kutip. Inisialisasi variabel $nim tidak diawali
dengan tanda kutip ganda ( “ ) sehingga menyebabkan error program.

3. Kurang Operator Penggabungan String
Seperti kita ketahui bahwa suatu string dapat digabungkan dengan variabel atau string
lainnya menggunakan operator penggabungan titik ( . ). Error akan ditampilkan jika pada
penggabungan string yang tidak menggunakan operator tersebut. Berikut ini contoh
program PHP yang error dalam hal penggabungan string.


Contoh Program 3.1
  1    <?php
  2    $nim = "0411500400";
  3    $nama = 'Chotimatul Musyarofah';
  4    echo "NIM : " $nim . "<br>";
  5    echo "Nama : $nama";
  6    ?>

Jika program di atas dijalankan maka akan ditampilkan pesan kesalahan sebagai berikut:

Parse error: syntax error, unexpected T_VARIABLE, expecting ',' or ';'
in /home/achmatim/public_html/artikel_demo/error-php/error3.1.php on line 4

Perhatikan baris keempat program 3.1 di atas. Antara string “NIM : “ dan variabel $nim
seharusnya terdapat operator penggabungan titik ( . ), seperti pada penggabungan $nim
dan string “<br>”. Selain dengan menggunakan operator penggabungan, string dan variabel
juga dapat digabungkan dengan memasukkan nama variabel ke dalam string yang diapit
dengan kutip ganda, seperti pada contoh baris ke-5 program 3.1 di atas.

4. Kurang atau Kelebihan Kurung Kurawal
Pada bahasa pemrograman PHP, kurung kurawal, baik { maupun }, digunakan untuk
mengelompokkan suatu blok perintah tertentu, seperti pada struktur kondisi IF-ELSE,
perulangan WHILE, pendefinisian fungsi, dan sebagainya. Penanganan error program yang
berkaitan dengan kelengkapan kurung kurawal terkadang sedikit sulit dilakukan, terutama

                                                                             Halaman 8 dari 15
10 Penyebab Error Program PHP yang Paling Sering Ditemui | Achmatim.Net


jika program sudah cukup kompleks dan gaya penulisan program ( coding style) tidak baik
dan teratur. Kerapihan dalam penulisan program sangat berguna bagi programmer dalam
mengelola program di kemudian hari, maupun dalam melakukan penelusuran kesalahan
(error).
Gaya penulisan program atau coding style memang setiap programmer memang berbeda,
namun demikian biasakanlah untuk mengikuti coding style yang baik. Di antara coding style
yang baik adalah konsistensi dalam penulisan nama variabel, fungsi dan class, penggunaan
indentasi (indenting) untuk blok dengan level yang berbeda, penambahan keterangan atau
komentar program dan sebagainya. Kita dapat mengikuti salah satu coding standard yang
sudah ada dan banyak digunakan oleh programmer di seluruh dunia, seperti Zend
Framework Coding Standard4 dan PEAR Coding Standard5.
Beberapa contoh program berikut ini akan mempermudah pemahaman kita dalam
menangani kesalahan program terkait kurung kurawal.
Contoh Program 4.1
     1   <?php
     2   $day = date ("D");
     3   switch ($day) {
     4         case 'Sun' : $hari = "Minggu"; break;
     5         case 'Mon' : $hari = "Senin"; break;
     6         case 'Tue' : $hari = "Selasa"; break;
     7         case 'Wed' : $hari = "Rabu"; break;
     8         case 'Thu' : $hari = "Kamis"; break;
     9         case 'Fri' : $hari = "Jum'at"; break;
    10         case 'Sat' : $hari = "Sabtu"; break;
    11         default : $hari = "Kiamat";
    12
    13   echo "Hari ini hari <b>$hari</b>";
    14   ?>
    15

Jika program di atas dijalankan maka akan ditampilkan pesan kesalahan sebagai berikut:

Parse error: syntax error, unexpected $end in
/home/achmatim/public_html/artikel_demo/error-php/error4.1.php on line 15

Saat kita menemukan pesan kesalahan seperti di atas, terkadang kita bingung sendiri karena
kesalahan justru menunjuk pada baris yang tidak ada perintah apapun yaitu baris ke-15.
Error tersebut merupakan salah satu indikasi bahwa penyebab error adalah kurangnya
kurung kurawal penutup. Yang harus dilakukan adalah dengan memeriksa setiap blok dalam
program dan pastikan bahwa setiap kurawal buka { memiliki pasangan }. Disinilah kerapihan
penulisan program akan sangat membantu penelusuran. Pada contoh program 4.1 di atas
letak kesalahannya ada di baris ke-12 dimana kurawal buka pada blok SWITCH-CASE belum

4    http://framework.zend.com/manual/1.12/en/coding-standard.html
5    http://pear.php.net/manual/en/standards.php

                                                                            Halaman 9 dari 15
10 Penyebab Error Program PHP yang Paling Sering Ditemui | Achmatim.Net


memiliki pasangan (belum ditutup).


Contoh Program 4.2
  1    <?php
  2    function cetak_ganjil ($awal, $akhir) {
  3          for ($i=$awal; $i<$akhir; $i++) {
  4               if ($i%2 == 1) {
  5                     echo "$i ";
  6               }
  7          }
  8          }
  9    }
 10    //pemanggilan fungsi
 11    $a = 10;
 12    $b = 50;
 13    echo "<b>Bilangan ganjil dari $a sampai $b : </b><br>";
 14    cetak_ganjil($a, $b);
 15    ?>

Jika program di atas dijalankan maka akan ditampilkan pesan kesalahan sebagai berikut:

Parse error: syntax error, unexpected '}' in
/home/achmatim/public_html/artikel_demo/error-php/error4.2.php on line 9

Berbeda dengan contoh program 4.1, pada contoh program 4.2 justru kelebihan kurung
kurawal penutup sehingga ditampilkan error program seperti di atas. Pada pesan kesalahan
ditunjukkan bahwa error berada pada baris ke-9, namun sebenarnya kelebihan kurawal
berada di baris ke-8. Hapus kurawal } pada baris ke-8. Sekali lagi disini gaya penulisan
program yang baik akan sangat membantu proses identifikasi kesalahan. Jika salah dalam
menghapus kurung kurawal seringkali akan menimbulkan error yang lain, sehingga
diperlukan ketelitian dan pengalaman dalam menangani error serupa.

5. Kesalahan Nama Variabel
Variabel merupakan tempat penyimpanan suatu nilai dalam program. Variabel terdiri dari 2
(dua) jenis, yaitu variabel bawaan (built-in) dari PHP dan variabel yang didefinisikan oleh
programmer. Untuk jenis yang kedua, kita dapat mendefinisikan variabel sesuai kebutuhan,
namun penamaannya harus mengikuti aturan-aturan yang telah ditetapkan PHP. Beberapa
aturan dasar antara lain harus diawali dengan tanda $ dan diikuti dengan huruf atau garis
bawah ( _ ), tidak boleh diawali dengan angka, tidak boleh mengandung karakter khusus
seperti spasi, tanda '$' dan tanda '+', dan seterusnya. Kesalahan dalam penamaan variabel
dapat menyebabkan error program.
Berikut ini contoh error program yang disebabkan karena kesalahan penamaan variabel.



                                                                            Halaman 10 dari 15
10 Penyebab Error Program PHP yang Paling Sering Ditemui | Achmatim.Net


Contoh Program 5.1
  1    <?php
  2    $nim = "0411500400";
  3    $nama = 'Chotimatul Musyarofah';
  4    $umur = 23;
  5    $3nilai = 82.25;
  6    $status = TRUE;
  7    echo "NIM : " . $nim . "<br>";
  8    echo "Nama : $nama<br>";
  9    print "Umur : " . $umur; print "<br>";
 10    printf ("Nilai : %.3f<br>", $nilai);
 11
 12    if ($status)
 13         echo "Status : Aktif";
 14    else
 15         echo "Status : Tidak Aktif";
 16    ?>

Jika program di atas dijalankan maka akan ditampilkan pesan kesalahan sebagai berikut:

Parse error: syntax error, unexpected T_LNUMBER, expecting T_VARIABLE or
'$' in /home/achmatim/public_html/artikel_demo/error-php/error5.1.php on
line 5

Pada baris ke-5 program 5.1 di atas terdapat pendefinisian variabel $3nilai. Nama variabel
tersebut tidak diijinkan karena setelah tanda $ terdapat karakter angka. Seharusnya setelah
tanda $ diikuti oleh huruf atau karakter garis-bawah ( _ ). Untuk memperbaiki program di
atas, tentu dengan mengganti nama variabel sesuai dengan ketentuan penamaan variabel
yang benar.

6. Variabel Belum Didefinisikan
Dalam hal penanganan variabel, PHP memang memiliki keleluasaan seperti variabel tidak
perlu dideklarasikan. Kita dapat langsung mendefinisikan isi dari variabel tanpa perlu
dipusingkan dengan deklarasi atau tipe data dari variabel. Tipe data akan ditentukan oleh
PHP berdasarkan isi dari variabelnya. Namun demikian, kita tetap perlu memahami bahwa
pada suatu kondisi, penggunaan variabel yang belum terdefinisikan sebelumnya dapat
menyebabkan munculnya error program. Sebagai contoh dalam program 6.1 berikut ini.
Contoh Program 6.1
  1    <?php
  2    for($i=1; $i<=10; $i++) {
  3          $total = $total + $i;
  4    }
  5    echo $total;
  6    ?>


                                                                            Halaman 11 dari 15
10 Penyebab Error Program PHP yang Paling Sering Ditemui | Achmatim.Net


Jika program di atas dijalankan maka akan ditampilkan pesan kesalahan sebagai berikut:

Notice: Undefined variable: total in
/home/achmatim/public_html/artikel_demo/error-php/error6.1.php on line 3

Maksud dari program 6.1 di atas adalah ingin menghitung dan menampilkan total dari 10
bilangan bulat yang dimulai dari 1. Dengan demikian terdapat variabel $total yang akan
diisikan hasil penjumlahan untuk setiap bilangan dari 1 hingga 10. Perhatikan baris ke-3
program dimana terdapat perintah $total = $total + $i;. Pesan kesalahan muncul
karena pada saat perulangan baru dimulai ($i = 1) nilai awal dari $total yang ditambahkan
dengan nilai $i belum terbentuk atau belum ada. Untuk mengatasi error tersebut, kita perlu
mendefinisikan nilai awal dari $total sebelum perulangan untuk menghitung total. Karena
$total pasti akan bernilai bilangan bulat, maka kita dapat memberi nilai awal $total dengan
0, sehingga perintah yang perlu ditambahkan adalah $total = 0.

7. Mengakses Index Array yang Tidak Ada
Seperti halnya variabel, dalam hal penanganan array, PHP juga tidak memerlukan
pendeklarasian awal maupun penentuan jumlah elemen dari array. Akan tetapi,
pengaksesan elemen array yang tidak ada atau belum terbentuk akan menyebabkan error
seperti pada contoh program 7.1 berikut ini.
Contoh Program 7.1
  1    <?php
  2    $arrBuah = array ("Mangga", "Apel", "Pisang", "Jeruk");
  3    echo $arrBuah[0]; //Mangga
  4    echo $arrBuah[4]; //Jeruk
  5    ?>

Jika program di atas dijalankan maka akan ditampilkan pesan kesalahan sebagai berikut:

Notice: Undefined offset: 4 in
/home/achmatim/public_html/artikel_demo/error-php/error7.1.php on line 4

Pada program 7.1 diatas terdapat sebuah variabel array dengan nama $arrBuah yang
didefinisikan berisi 4 elemen. Index dari elemen array secara default diawali dengan 0,
sehingga elemen array tersebut dapat diakses dengan index 0, 1, 2 dan 3. Pesan kesalahan
terjadi karena pada baris ke-4, program mengakses elemen dengan index 4, dimana index
array tersebut tidak ada atau belum terbentuk. Jika ingin mengakses elemen terakhir dari
$arrBuah tersebut, maka seharusnya menggunakan index 3.

8. Pembagian dengan Nol
Perhitungan matematika di dalam program seringkali diperlukan, misalnya dalam kaitannya
dengan perhitungan gaji, perhitungan total pemesanan barang, dan sebagainya. Terkait
dengan perhitungan matematis tersebut, kita perlu jeli dalam penerapannya, terutama jika

                                                                            Halaman 12 dari 15
10 Penyebab Error Program PHP yang Paling Sering Ditemui | Achmatim.Net


berkaitan dengan pembagian. Dalam matematika, pembagian dengan bilangan 0 akan
menghasilkan nilai yang tidak terdefinisi. Dalam program, pembagian dengan bilangan 0
akan menyebabkan adanya error “Division by zero”. Berikut ini contoh sederhananya:
Contoh Program 8.1
  1    <?php
  2    $a = 10;
  3    $b = 0;
  4
  5    echo $a / $b;
  6    ?>

Jika program di atas dijalankan maka akan ditampilkan pesan kesalahan sebagai berikut:

Warning: Division by zero in /home/achmatim/public_html/artikel_demo/error-
php/error8.1.php on line 5

Perhatikan program 8.1 di atas. Nilai variabel $a adalah 10, $b adalah 0. Pada baris ke-5
terdapat perintah untuk menampilkan hasil pembagian $a / $b, yang berarti 10 / 0. Tentu
hal tersebut akan menyebabkan error seperti terlihat pada contoh di atas.

9. Memanggil Fungsi yang Belum Terdefinisi
Setiap fungsi, baik fungsi built-in maupun fungsi buatan, yang dipanggil dalam program
PHP, harus sudah didefinisikan terlebih dahulu. Fungsi built-in sudah didefinisikan oleh PHP
sehingga tidak perlu didefinisikan lagi, contohnya fungsi strlen(), addslashes(), explode(),
date() dan sebagainya. Sementara itu, fungsi buatan harus didefinisikan sendiri oleh
programmer dan letak pendefinisian fungsi dapat diakses oleh bagian program yang
memanggilnya. Pemanggilan fungsi yang belum terdefinisi atau kesalahan penulisan nama
fungsi saat pemanggilan sering terjadi sehingga menyebabkan pesan kesalahan.
Pada contoh program berikut ini terdapat kesalahan penulisan fungsi addslashes() sehingga
menyebabkan error “Call to undefined function”.
Contoh Program 9.1
  1    <?php
  2    $str = "Is your name O'Reilly ?";
  3    $str2 = addlashes ($str);
  4    $str3 = stripslashes ($str2);
  5    echo "<b>String asli</b> : $str";
  6    echo "<br><b>addslashes()</b> : $str2";
  7    echo "<br><b>stripslashes()</b> : $str3";
  8    ?>

Jika program di atas dijalankan maka akan ditampilkan pesan kesalahan sebagai berikut:



                                                                             Halaman 13 dari 15
10 Penyebab Error Program PHP yang Paling Sering Ditemui | Achmatim.Net


Fatal error: Call to undefined function addlashes() in
/home/achmatim/public_html/artikel_demo/error-php/error9.1.php on line 3


10. Menyertakan File (Include) yang Tidak Ada
Pada aplikasi berbasis PHP, menyertakan (include) file sudah biasa dilakukan. Misalnya pada
saat program harus menyertakan library seperti Smarty, FPDF, JPGraph dan sebagainya.
Untuk menyertakan file lain dalam PHP dapat menggunakan fungsi include(), include_once(),
require() atau require_once(). Masing-masing memiliki perbedaan penggunaannya.
Penyertaan file yang tidak benar, baik karena filenya tidak ada, path atau lokasi file yang
salah maupun akses terhadap file tidak diijinkan, dapat menyebabkan error program.
Contohnya pada program 10.1 berikut ini.
Contoh Program 10.1
  1    <?php
  2    include "koneksi.php";
  3    echo "testing";
  4    ?>

Jika program di atas dijalankan maka akan ditampilkan pesan kesalahan sebagai berikut:

Warning: include(koneksi.php): failed to open stream: No such file or
directory in /home/achmatim/public_html/artikel_demo/error-
php/error10.1.php on line 2 Warning: include(): Failed opening
'koneksi.php' for inclusion
(include_path='.:/usr/share/php:/usr/share/pear') in
/home/achmatim/public_html/artikel_demo/error-php/error10.1.php on line 2

File koneksi.php yang disertakan dalam program 10.1 di atas tidak ada sehingga pesan
kesalahan “failed to open stream” muncul. Dengan demikian, kita harus pastikan bahwa file
yang kita include-kan benar-benar ada dan diakses dengan benar.


Demikianlah 10 Penyebab Error Program dalam PHP beserta 19 contoh programnya.
Semoga dengan artikel ini, kita semua dapat lebih memahami bagaimana menangani pesan
kesalahan atau error program yang terjadi dalam proses pembelajaran kita. Dan yang
terpenting dalam proses pembelajaran PHP adalah konsistensi serta kesungguhan kita
dalam mencoba sebanyak-banyaknya contoh program sehingga kemampuan PHP akan
semakin meningkat.
Semoga tutorial ini bermanfaat untuk kita semua. Selamat hari Sumpah Pemuda, 28
Oktober 2012. Satu Nusa, Satu Bangsa, Satu Bahasa, Satu Karya untuk Indonesia!




                                                                            Halaman 14 dari 15
10 Penyebab Error Program PHP yang Paling Sering Ditemui | Achmatim.Net


Referensi Terkait
•   Buku Gratis Pemrograman Web dengan PHP & MySQL. http://achmatim.net/buku-
    gratis/pemrograman-web-dengan-php-dan-mysql/
•   PHP List Parser of Tokens. http://php.net/manual/en/tokens.php
•   Mengenal Error Dalam Program. http://achmatim.net/2008/11/17/mengenal-error-
    dalam-program/

Tentang Penulis
              Achmad Solichin. Adalah Lulusan Teknik Informatika, Fakultas Teknologi
              Informasi, Universitas Budi Luhur, Jakarta (S1, 2005) dan Magister Teknologi
              Informasi, Universitas Indonesia (S2, 2010). Saat ini sedang menempuh
              program Doktoral dalam bidang Ilmu Komputer di Universitas Gadjah Mada,
              Jogjakarta. Kegiatan sehari-hari adalah sebagai Dosen di Universitas Budi
              Luhur (http://www.budiluhur.ac.id). Kegiatan lain aktif sebagai programmer,
              web developer, system analyst, konsultan dan memberikan pelatihan di
              berbagai bidang komputer serta membuat tutorial-tutorial praktis di bidang
komputer. Penulis memiliki situs utama di http://achmatim.net yang berisi berbagai tutorial
praktis di bidang komputer serta menyediakan buku gratis komputer. Penulis dapat
dihubungi melalui email di achmad.solichin@budiluhur.ac.id dan achmatim@gmail.com, YM
achmatim, Facebook achmatim dan Twitter @achmatim.


Lisensi Dokumen
Seluruh isi dalam dokumen ini dapat digunakan, dimodifikasi dan disebarluaskan secara
bebas untuk tujuan pendidikan, pembelajaran dan bukan komersial ( non profit), dengan
syarat tidak menghilangkan, menghapus atau mengubah atribut penulis dokumen ini dan
pernyataan dalam lisensi dokumen yang disertakan di setiap dokumen. Tidak diperbolehkan
mengkomersialkan tutorial ini kecuali mendapatkan ijin terlebih dahulu dari penulis.




                                                                            Halaman 15 dari 15

More Related Content

PDF
Laporan praktikum 1 pemrograman mobile
PDF
Proposal Proyek Aplikasi Web Percetakan
PPTX
perkembangan komputer dan pengaruhnya terhadap masyarakat
PDF
Modul Ajar_Proses Bisnis Bidang Otomotif.pdf
PDF
Download Modul Ajar Informatika Kelas 7 Kurikulum Merdeka Terbaru 2025
PPTX
Analisis kebutuhan perangkat lunak
PPTX
Tugas Powerpoint Pemrograman Dasar
PPT
IMK - Strategi Banyak Window
Laporan praktikum 1 pemrograman mobile
Proposal Proyek Aplikasi Web Percetakan
perkembangan komputer dan pengaruhnya terhadap masyarakat
Modul Ajar_Proses Bisnis Bidang Otomotif.pdf
Download Modul Ajar Informatika Kelas 7 Kurikulum Merdeka Terbaru 2025
Analisis kebutuhan perangkat lunak
Tugas Powerpoint Pemrograman Dasar
IMK - Strategi Banyak Window

What's hot (20)

DOCX
Laporan Makalah Pembuatan Website E-Commerce-Basis Data
PPT
Jawaban Struktur data soal-latihan
DOCX
Makalah sejarah perkembangan komputer dari awal hingga saat ini
PDF
Testing dan implementasi_sistem_-_romeo
PPTX
Artificial intelligence
PPT
19.advanced encryption standard (aes)
PPT
Metode pencarian heuristik
PDF
Laporan praktek kerja industri (prakerin) smk al baisuny 2014-2015 (syafi'i)
PPTX
Ms.Excel Rumus Fungsi IF
DOCX
Makalah Sistem Informasi Manajemen - Perancangan sistem informasi pendidikan
DOCX
Makalah dasar komputer
PPT
Desain Top Down
DOCX
Tugas laporan project aplikasi website
DOCX
Membagi tugas-teknisi-dan-laboran-lab-tik-imam
DOCX
Prota kelas xi kurikulum 2013
PPTX
Informatika Kelas 8 Bab 2 Berpikir Komputasional.pptx
PPT
Metode Profile matching
PPTX
Deadlock pada sistem operasi
PPTX
Presentasi Materi Literasi Digital Mapel Informatika.pptx
DOCX
MAKALAH STACK (TUMPUKAN )
Laporan Makalah Pembuatan Website E-Commerce-Basis Data
Jawaban Struktur data soal-latihan
Makalah sejarah perkembangan komputer dari awal hingga saat ini
Testing dan implementasi_sistem_-_romeo
Artificial intelligence
19.advanced encryption standard (aes)
Metode pencarian heuristik
Laporan praktek kerja industri (prakerin) smk al baisuny 2014-2015 (syafi'i)
Ms.Excel Rumus Fungsi IF
Makalah Sistem Informasi Manajemen - Perancangan sistem informasi pendidikan
Makalah dasar komputer
Desain Top Down
Tugas laporan project aplikasi website
Membagi tugas-teknisi-dan-laboran-lab-tik-imam
Prota kelas xi kurikulum 2013
Informatika Kelas 8 Bab 2 Berpikir Komputasional.pptx
Metode Profile matching
Deadlock pada sistem operasi
Presentasi Materi Literasi Digital Mapel Informatika.pptx
MAKALAH STACK (TUMPUKAN )
Ad

Viewers also liked (13)

PDF
Modern PHP Developer
PPTX
Pelatihan Mendeley untuk Penulisan Penelitian (15 Mei 2015)
PPTX
Seminar: PHP Developer for Dummies
DOCX
pemrograman php ii
PDF
Artificial intelligence
PPT
PPT
Les04
PPT
Les03 (Using Single Row Functions To Customize Output)
PPT
Les05 (Displaying Data from Multiple Table)
PPTX
Lecture 01 Introduction to Software Engineering
PPTX
Lecture 02 Software Process Model
DOCX
TUTORIAL SETTING DAN SHARING FOLDER/FILE DI WINDOWS 7
Modern PHP Developer
Pelatihan Mendeley untuk Penulisan Penelitian (15 Mei 2015)
Seminar: PHP Developer for Dummies
pemrograman php ii
Artificial intelligence
Les04
Les03 (Using Single Row Functions To Customize Output)
Les05 (Displaying Data from Multiple Table)
Lecture 01 Introduction to Software Engineering
Lecture 02 Software Process Model
TUTORIAL SETTING DAN SHARING FOLDER/FILE DI WINDOWS 7
Ad

Similar to 10 penyebab error program php yang paling sering ditemui (achmatim.net) (20)

PDF
10 penyebab error_program_php_yang_paling_sering_ditemui_achmatim.net
PPTX
Penanganan Kesalahan pada Program aplikasi
PPTX
Penanganan Kesalahan pada Program aplikasi
PDF
Modul praktikum algoritma
PDF
10 pemrograman internet php (2)
DOC
Tutorial php
DOCX
Laporan praktikum web ke 5
PPT
265991658-Pengantar-PHP-ppt.ppt
PDF
Modul php 1
PDF
Bab II - Pernyataan Kondisi Bercabang
PPT
DOCX
Laporan pratikum iv web
PDF
tutorial php
PDF
Tutorial dan Pengenalan php
PDF
Tutorial php
DOCX
Belajar Java dasar
PPT
Pertemuan 9
DOCX
Logika algoritma dan pemograman
PPTX
Pengenalan PHP
PPT
Situs/web dapat dikategorikan menjadi dua yaitu web statis dan web dinamis/in...
10 penyebab error_program_php_yang_paling_sering_ditemui_achmatim.net
Penanganan Kesalahan pada Program aplikasi
Penanganan Kesalahan pada Program aplikasi
Modul praktikum algoritma
10 pemrograman internet php (2)
Tutorial php
Laporan praktikum web ke 5
265991658-Pengantar-PHP-ppt.ppt
Modul php 1
Bab II - Pernyataan Kondisi Bercabang
Laporan pratikum iv web
tutorial php
Tutorial dan Pengenalan php
Tutorial php
Belajar Java dasar
Pertemuan 9
Logika algoritma dan pemograman
Pengenalan PHP
Situs/web dapat dikategorikan menjadi dua yaitu web statis dan web dinamis/in...

More from Achmad Solichin (20)

PDF
Kuliah Umum - Tips Publikasi Jurnal SINTA untuk Mahasiswa Galau (6 Agustus 2022)
PDF
Materi Webinar Web 3.0 (16 Juli 2022)
PDF
Webinar: Kesadaran Keamanan Informasi (3 Desember 2021)
PPTX
Webinar PHP-ID: Mari Mengenal Logika Fuzzy (Fuzzy Logic)
PDF
Webinar PHP-ID: Machine Learning dengan PHP
PPTX
Webinar Data Mining dengan Rapidminer | Universitas Budi Luhur
PPTX
TREN DAN IDE RISET BIDANG DATA MINING TERBARU
PPTX
Metodologi Riset: Literature Review
PPTX
Materi Seminar: Artificial Intelligence dengan PHP
PPTX
Percobaan Perpindahan Kalor melalui Konduksi, Konveksi dan Radiasi
PDF
Metodologi Riset: Literature Review
PPTX
Depth First Search (DFS) pada Graph
PPTX
Breadth First Search (BFS) pada Graph
PPTX
Binary Search Tree (BST) - Algoritma dan Struktur Data
PPTX
Computer Vision di Era Industri 4.0
PDF
Seminar: Become a Reliable Web Programmer
PPTX
The Big 5: Future IT Trends
PPT
Pertemuan 1 - Algoritma dan Struktur Data 1
PPTX
Sharing Penelitian S3 Lab Elins FMIPA UGM - 17 Februari 2016
PDF
Seminar: Mau jadi Android User atau Developer?
Kuliah Umum - Tips Publikasi Jurnal SINTA untuk Mahasiswa Galau (6 Agustus 2022)
Materi Webinar Web 3.0 (16 Juli 2022)
Webinar: Kesadaran Keamanan Informasi (3 Desember 2021)
Webinar PHP-ID: Mari Mengenal Logika Fuzzy (Fuzzy Logic)
Webinar PHP-ID: Machine Learning dengan PHP
Webinar Data Mining dengan Rapidminer | Universitas Budi Luhur
TREN DAN IDE RISET BIDANG DATA MINING TERBARU
Metodologi Riset: Literature Review
Materi Seminar: Artificial Intelligence dengan PHP
Percobaan Perpindahan Kalor melalui Konduksi, Konveksi dan Radiasi
Metodologi Riset: Literature Review
Depth First Search (DFS) pada Graph
Breadth First Search (BFS) pada Graph
Binary Search Tree (BST) - Algoritma dan Struktur Data
Computer Vision di Era Industri 4.0
Seminar: Become a Reliable Web Programmer
The Big 5: Future IT Trends
Pertemuan 1 - Algoritma dan Struktur Data 1
Sharing Penelitian S3 Lab Elins FMIPA UGM - 17 Februari 2016
Seminar: Mau jadi Android User atau Developer?

10 penyebab error program php yang paling sering ditemui (achmatim.net)

  • 1. 10 Penyebab Error Program PHP yang Paling Sering Ditemui | Achmatim.Net 10 Penyebab Error Program PHP yang Paling Sering Ditemui Tutorial ini ditulis oleh Achmad Solichin dan sudah dipublikasikan di http://achmatim.net pada tanggal 28 Oktober 2012 Bagi kita yang sudah malang-melintang di dunia programming, termasuk PHP, tentunya sudah tidak asing lagi dengan yang namanya "error" di dalam program. Ibaratnya itu sudah menjadi kudapan sehari-hari. Hehe. Sedangkan bagi kita yang baru terjun di dunia programming, terutama PHP, seringkali "error" merupakan sesuatu yang menakutkan dan membingungkan. Banyak yang akhirnya nyerah dengan programming. Tahun 2008 lalu, saya pernah menulis artikel di website ini mengenai tingkatan error dalam program 1. Terdapat 3 (tiga) tingkatan error program yaitu error tata bahasa (sintaks), error runtime dan error logika. Dari ketiga jenis error program tersebut, sebenarnya yang paling mudah ditangani adalah error yang pertama yaitu error tata bahasa (sintaks) karena compiler atau interpreter langsung memberitahukannya saat program dikompilasi atau dijalankan. Namun demikian, tetap saja diperlukan pengalaman, ketelitian dan kegigihan dalam menangani atau mencari penyebab error yang muncul. Dalam tutorial ini, berdasarkan pengalaman selama menjadi programmer dan mengajar di Universitas Budi Luhur2, saya mencoba mengumpulkan berbagai macam error program PHP yang paling sering ditemui oleh programmer, terutama yang masih dalam tahap belajar. Setidaknya saya menyajikan 19 macam error program PHP yang terbagi menjadi 10 kategori berdasarkan penyebabnya masing-masing. Untuk setiap error program, disertakan contoh program sederhana yang disertai penjelasan solusi dan cara menangani error yang muncul. Kenapa 19 macam dan 10 kategori? Karena artikel ini mulai ditulis pada tanggal 19-10-2012 bertepatan dengan Hari Ulang Tahun ke-4 putra tercinta Muhammad Lintang. :) 1 http://achmatim.net/2008/11/17/mengenal-error-dalam-program/ 2 http://www.budiluhur.ac.id Halaman 1 dari 15
  • 2. 10 Penyebab Error Program PHP yang Paling Sering Ditemui | Achmatim.Net Diharapkan dengan tutorial ini, kita semua akan terbantu dalam memperbaiki berbagai error program PHP yang mungkin ditemui saat membuat program. Memang untuk menjadi terbiasa menghadapi berbagai error program, diperlukan proses pembelajaran dan pengalaman yang cukup banyak. Oleh karena itu, perbanyaklah belajar dan mencoba sebanyak-banyaknya program jika Anda ingin menguasai pemrograman web dengan PHP. Semoga tutorial ini bermanfaat untuk kita semua. 1. Kurang Titik-Koma Jenis error program ini merupakan error yang paling sering ditemui. Penyebabnya karena kurang menambahkan titik-koma ( ; ) pada akhir suatu perintah (statement). Solusi dalam mencari letak kesalahan programnya membutuhkan kejelian dan ketelitian. Namun demikian, umumnya akan ditunjukkan baris dimana error tersebut muncul. Mulailah dari baris tersebut, namun tidak selamanya penyebab kesalahan berada pada baris yang ditunjukkan. Terkadang penyebab kesalahan justru berada di baris atas atau sebelumnya. Berikut ini beberapa contoh program beserta tampilan error yang akan muncul jika program dijalankan: Contoh Program 1.1 1 <?php 2 $nim = "1111500111"; 3 $nama = "Achmad Solichin" 4 echo $nim; 5 echo $nama; 6 ?> Jika program di atas dijalankan maka akan ditampilkan error sebagai berikut: Parse error: syntax error, unexpected T_ECHO in /home/achmatim/public_html/artikel_demo/error-php/error1.1.php on line 4 Baris yang ditunjukkan pada tampilan error di atas adalah baris ke-4, namun jika diperhatikan program 1.1 di atas ternyata penyebab error justru bukan di baris ke-4. Penyebab error berada pada baris 3, dimana statement tidak diakhiri dengan titik-koma ( ; ). Mengapa PHP justru menunjuk ke baris 4? Hal ini disebabkan karena proses pemeriksaan sintaks oleh PHP dilakukan secara berurutan (sekuensial) dari baris pertama hingga terakhir. Pada baris ketiga belum terjadi error, namun statement masih memerlukan adanya titik- koma ( ; ). Saat PHP berada di baris 4, bukan titik-koma ( ; ) yang ditemukan, namun justru perintah “echo”, sehingga disinilah PHP akan menunjukkan errornya. PHP tidak akan mengetahui penyebab errornya dimana, namun PHP akan menunjukkan pada baris mana error mulai terjadi. Tips: periksa program pada baris yang ditunjukkan oleh pesan error, jika tidak ditemukan, periksa baris atasnya. Demikian dan seterusnya hingga penyebab error ditemukan. Halaman 2 dari 15
  • 3. 10 Penyebab Error Program PHP yang Paling Sering Ditemui | Achmatim.Net Contoh Program 1.2 1 <?php 2 $user = "achmatim"; 3 $pass = "123" 4 if ($user == "achmatim" && $pass == "123") { 5 echo "Login Berhasil"; 6 } else { 7 echo "Login Gagal"; 8 } 9 ?> Jika program di atas dijalankan maka akan ditampilkan error sebagai berikut: Parse error: syntax error, unexpected T_IF in /home/achmatim/public_html/artikel_demo/error-php/error1.2.php on line 4 Sama seperti program 1.1, penyebab errornya adalah kurang titik-koma. Pada program 1.1, letak kesalahan diikuti dengan perintah echo sehingga pesan kesalahan mengatakan “unexpected T_ECHO”. Sedangkan pada program 1.2, letak kesalahan diikuti dengan perintah if, sehingga pesan kesalahan yang ditampilkan adalah “ unexpected T_IF”. Dari pesan kesalahan tersebut, kita dapat mengetahui letak kesalahan pasti berada sebelum perintah if, tepatnya pada baris ke-3, statement tidak diakhiri dengan titik-koma ( ; ). Contoh Program 1.3 1 <?php 2 $day = date ("D") 3 switch ($day) { 4 case 'Sun' : $hari = "Minggu"; break; 5 case 'Mon' : $hari = "Senin"; break; 6 case 'Tue' : $hari = "Selasa"; break; 7 case 'Wed' : $hari = "Rabu"; break; 8 case 'Thu' : $hari = "Kamis"; break; 9 case 'Fri' : $hari = "Jum'at"; break; 10 case 'Sat' : $hari = "Sabtu"; break; 11 default : $hari = "Kiamat"; 12 } 13 echo "Hari ini hari <b>$hari</b>"; 14 ?> Jika program di atas dijalankan maka akan ditampilkan error sebagai berikut: Parse error: syntax error, unexpected T_SWITCH in /home/achmatim/public_html/artikel_demo/error-php/error1.3.php on line 3 Halaman 3 dari 15
  • 4. 10 Penyebab Error Program PHP yang Paling Sering Ditemui | Achmatim.Net Seperti dua contoh sebelumnya, jelas bahwa pada program 1.3 letak kesalahan berada sebelum perintah switch, tepatnya pada baris ke-2, statement tidak diakhiri dengan titik- koma ( ; ). Jadi, jika muncul pesan kesalahan yang mirip seperti di atas, langsung saja cari perintah switch dan perhatikan baris perintah sebelumnya. Contoh Program 1.4 1 <?php 2 /* contoh 1 */ 3 $i = 1 4 while ($i <= 10) { 5 echo $i++; 6 } 7 ?> Jika program di atas dijalankan maka akan ditampilkan error sebagai berikut: Parse error: syntax error, unexpected T_WHILE in /home/achmatim/public_html/artikel_demo/error-php/error1.4.php on line 4 Pada contoh program 1.4 di atas, letak kesalahan berada tepat di atas perintah while, tepatnya di baris ke-3. Statement seharusnya diakhiri dengan titik-koma. Contoh Program 1.5 1 <?php 2 function cetak_ganjil ($awal, $akhir) { 3 for ($i=$awal; $i<$akhir; $i++) { 4 if ($i%2 == 1) { 5 echo "$i "; 6 } 7 } 8 } 9 //pemanggilan fungsi 10 $a = 10; 11 $b = 50; 12 echo "<b>Bilangan ganjil dari $a sampai $b : </b><br>" 13 cetak_ganjil($a, $b); 14 ?> Jika program di atas dijalankan maka akan ditampilkan error sebagai berikut: Parse error: syntax error, unexpected T_STRING, expecting ',' or ';' in /home/achmatim/public_html/artikel_demo/error-php/error1.5.php on line 13 Halaman 4 dari 15
  • 5. 10 Penyebab Error Program PHP yang Paling Sering Ditemui | Achmatim.Net Pada contoh program 1.5 di atas, sudah jelas bahwa letak kesalahannya pada baris ke-12 dimana statement tidak diakhiri titik-koma. Error dengan pesan “ unexpected T_STRING” perlu dicermati dengan lebih teliti karena error tidak hanya terjadi karena kurangnya titik- koma, namun dapat juga karena kurang koma ( , ) atau operator penggabungan string berupa titik ( . ). Namun demikian, umumnya terjadi karena penulisan string yang tidak lengkap. Contoh Program 1.6 1 <?php 2 echo "test" 3 function cetak_ganjil ($awal, $akhir) { 4 for ($i=$awal; $i<$akhir; $i++) { 5 if ($i%2 == 1) { 6 echo "$i "; 7 } 8 } 9 } 10 //pemanggilan fungsi 11 $a = 10; 12 $b = 50; 13 echo "<b>Bilangan ganjil dari $a sampai $b : </b><br>"; 14 cetak_ganjil($a, $b); 15 ?> Jika program di atas dijalankan maka akan ditampilkan error sebagai berikut: Parse error: syntax error, unexpected T_FUNCTION, expecting ',' or ';' in /home/achmatim/public_html/artikel_demo/error-php/error1.6.php on line 3 Contoh program 1.6 di atas mirip dengan contoh program sebelumnya, hanya saja letak kesalahannya sekarang berada pada baris ke-2, sebelum pendefinisian fungsi. Pada baris tersebut, seharusnya diakhiri dengan titik-koma ( ; ). Contoh Program 1.7 1 <?php 2 $nim = "0411500400"; 3 $nama = 'Chotimatul Musyarofah'; 4 $umur = 23; 5 $nilai = 82.25; 6 $status = TRUE; 7 echo "NIM : " . $nim . "<br>"; 8 echo "Nama : $nama<br>"; 9 print "Umur : " . $umur; print "<br>"; 10 printf ("Nilai : %.3f<br>", $nilai); Halaman 5 dari 15
  • 6. 10 Penyebab Error Program PHP yang Paling Sering Ditemui | Achmatim.Net 11 12 if ($status) 13 echo "Status : Aktif" 14 else 15 echo "Status : Tidak Aktif"; 16 ?> Jika program di atas dijalankan maka akan ditampilkan pesan kesalahan sebagai berikut: Parse error: syntax error, unexpected T_ELSE, expecting ',' or ';' in /home/achmatim/public_html/artikel_demo/error-php/error4.1.php on line 14 Letak kesalahan pada contoh program 1.7 bukanlah pada baris ke-14 seperti ditunjukkan di atas, namun terletak di baris ke-13 (sebelum perintah ELSE) dimana statement tidak diakhiri dengan titik-koma. 2. Kekurangan atau Kelebihan Kutip Penyebab error program yang kedua berkaitan dengan tanda kutip, baik kutip tunggal (') maupun kutip ganda (“). Seperti kita ketahui bahwa di PHP, string dapat dituliskan dengan diapit oleh tanda kutip tunggal (') dan kutip ganda (“). Error program akan terjadi jika penyajian tanda kutip yang tidak tepat, misalnya tidak ditutup (kurang kutip) atau kelebihan kutip. Berikut ini beberapa contoh program PHP yang error karena permasalahan tanda kutip: Contoh Program 2.1 1 <?php 2 $nim = "0411500400; 3 $nama = 'Chotimatul Musyarofah'; 4 echo "NIM : " . $nim . "<br>"; 5 echo "Nama : $nama"; 6 ?> Jika program di atas dijalankan maka akan ditampilkan pesan kesalahan sebagai berikut: Parse error: syntax error, unexpected T_STRING in /home/achmatim/public_html/artikel_demo/error-php/error2.1.php on line 4 Perhatikan contoh program 2.1 di atas. Pesan kesalahan menunjuk pada baris ke-4, tetapi penyebab kesalahan justru ada di baris ke-2. Hal tersebut terjadi karena pada baris ke-2 terdapat string yang dibuka dengan kutip ganda (“) namun tidak ada penutup atau pasangannya. Pada proses kompilasi, PHP akan memeriksa sintaks program secara berurutan. Saat ditemukan tanda kutip, maka program akan menganggap teks berikutnya sebagai sebuah string hingga ketemu pasangannya. Seperti pada contoh program 2.1 di atas, program tidak menemukan pasangan dari kutip ganda (“) yang ada di baris kedua pada Halaman 6 dari 15
  • 7. 10 Penyebab Error Program PHP yang Paling Sering Ditemui | Achmatim.Net baris yang sama, namun justru ditemukan kutip ganda (“) pada baris ke-4. Kutip ganda pada baris keempat dianggap sebagai pasangan (penutup) kutip ganda pada baris kedua. Setelah ditemukan penutup dari kutip tersebut, maka program akan menganggap bahwa penyajian string (statement) sudah lengkap dan harus ditutup dengan titik-koma atau operator penggabungan string. Ternyata program tidak menemukan penutup statement setelahnya, sehingga terjadilah error di baris ke-4. Untuk mengatasi error pada program 2.1 di atas tentunya cukup dengan menambahkan kutip ganda sebelum titik-koma pada baris kedua. Menemukan letak kesalahan yang berkaitan dengan tanda kutip memang terkadang agak sulit dilakukan, terutama pada program yang cukup panjang. Letak kesalahan seringkali berada pada baris yang sama sekali berbeda dengan petunjuk pada pesan kesalahannya. Oleh karena itu, pemahaman terhadap penanganan string menjadi cukup penting dan sangat membantu kita dalam menemukan letak kesalahan dengan cepat. Jika perlu, pelajari kembali buku gratis Pemrograman Web dengan PHP & MySQL3 terutama Bab 6 mengenai String dan Tanggal. Selain itu, penggunaan editor program yang baik dan sesuai juga sangat membantu menemukan kesalahan dengan cepat, karena pada umumnya editor memiliki pewarnaan yang berbeda antara string, nama variabel maupun perintah bawaan PHP. Sebagai contoh, bandingkan contoh program 1.7 dan 2.1 di atas. Perintah echo pada program 1.7 semuanya berwarna merah, namun perintah echo pada program 2.1 berwarna biru. Hal tersebut menunjukkan bahwa pada program 2.1 pasti terjadi kesalahan. Contoh Program 2.2 1 <?php 2 $nim = "0411500400"; 3 $nama = 'Chotimatul Musyarofah; 4 echo "NIM : " . $nim . "<br>"; 5 echo "Nama : $nama"; 6 ?> Jika program di atas dijalankan maka akan ditampilkan pesan kesalahan sebagai berikut: Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE in /home/achmatim/public_html/artikel_demo/error-php/error2.2.php on line 3 Penyebab error pada program 2.2 di atas sudah cukup jelas, yaitu kurangnya pasangan tanda kutip tunggal ( ' ) pada baris ketiga. Sama seperti error pada program sebelumnya, kita juga dapat menganalisa kesalahan program dengan memperhatikan warna source code yang ditampilkan oleh editor. Contoh Program 2.3 1 <?php 2 $nim = 0411500400"; 3 $nama = 'Chotimatul Musyarofah'; 3 http://achmatim.net/2009/04/15/buku-gratis-pemrograman-web-dengan-php-dan-mysql/ Halaman 7 dari 15
  • 8. 10 Penyebab Error Program PHP yang Paling Sering Ditemui | Achmatim.Net 4 echo "NIM : " . $nim . "<br>"; 5 echo "Nama : $nama"; 6 ?> Jika program di atas dijalankan maka akan ditampilkan pesan kesalahan sebagai berikut: Parse error: syntax error, unexpected '"' in /home/achmatim/public_html/artikel_demo/error-php/error2.3.php on line 2 Perhatikan baris kedua program 2.3 di atas. Terlihat bahwa nilai dari variabel $nim bertipe string, sehingga harus diapit dengan tanda kutip. Inisialisasi variabel $nim tidak diawali dengan tanda kutip ganda ( “ ) sehingga menyebabkan error program. 3. Kurang Operator Penggabungan String Seperti kita ketahui bahwa suatu string dapat digabungkan dengan variabel atau string lainnya menggunakan operator penggabungan titik ( . ). Error akan ditampilkan jika pada penggabungan string yang tidak menggunakan operator tersebut. Berikut ini contoh program PHP yang error dalam hal penggabungan string. Contoh Program 3.1 1 <?php 2 $nim = "0411500400"; 3 $nama = 'Chotimatul Musyarofah'; 4 echo "NIM : " $nim . "<br>"; 5 echo "Nama : $nama"; 6 ?> Jika program di atas dijalankan maka akan ditampilkan pesan kesalahan sebagai berikut: Parse error: syntax error, unexpected T_VARIABLE, expecting ',' or ';' in /home/achmatim/public_html/artikel_demo/error-php/error3.1.php on line 4 Perhatikan baris keempat program 3.1 di atas. Antara string “NIM : “ dan variabel $nim seharusnya terdapat operator penggabungan titik ( . ), seperti pada penggabungan $nim dan string “<br>”. Selain dengan menggunakan operator penggabungan, string dan variabel juga dapat digabungkan dengan memasukkan nama variabel ke dalam string yang diapit dengan kutip ganda, seperti pada contoh baris ke-5 program 3.1 di atas. 4. Kurang atau Kelebihan Kurung Kurawal Pada bahasa pemrograman PHP, kurung kurawal, baik { maupun }, digunakan untuk mengelompokkan suatu blok perintah tertentu, seperti pada struktur kondisi IF-ELSE, perulangan WHILE, pendefinisian fungsi, dan sebagainya. Penanganan error program yang berkaitan dengan kelengkapan kurung kurawal terkadang sedikit sulit dilakukan, terutama Halaman 8 dari 15
  • 9. 10 Penyebab Error Program PHP yang Paling Sering Ditemui | Achmatim.Net jika program sudah cukup kompleks dan gaya penulisan program ( coding style) tidak baik dan teratur. Kerapihan dalam penulisan program sangat berguna bagi programmer dalam mengelola program di kemudian hari, maupun dalam melakukan penelusuran kesalahan (error). Gaya penulisan program atau coding style memang setiap programmer memang berbeda, namun demikian biasakanlah untuk mengikuti coding style yang baik. Di antara coding style yang baik adalah konsistensi dalam penulisan nama variabel, fungsi dan class, penggunaan indentasi (indenting) untuk blok dengan level yang berbeda, penambahan keterangan atau komentar program dan sebagainya. Kita dapat mengikuti salah satu coding standard yang sudah ada dan banyak digunakan oleh programmer di seluruh dunia, seperti Zend Framework Coding Standard4 dan PEAR Coding Standard5. Beberapa contoh program berikut ini akan mempermudah pemahaman kita dalam menangani kesalahan program terkait kurung kurawal. Contoh Program 4.1 1 <?php 2 $day = date ("D"); 3 switch ($day) { 4 case 'Sun' : $hari = "Minggu"; break; 5 case 'Mon' : $hari = "Senin"; break; 6 case 'Tue' : $hari = "Selasa"; break; 7 case 'Wed' : $hari = "Rabu"; break; 8 case 'Thu' : $hari = "Kamis"; break; 9 case 'Fri' : $hari = "Jum'at"; break; 10 case 'Sat' : $hari = "Sabtu"; break; 11 default : $hari = "Kiamat"; 12 13 echo "Hari ini hari <b>$hari</b>"; 14 ?> 15 Jika program di atas dijalankan maka akan ditampilkan pesan kesalahan sebagai berikut: Parse error: syntax error, unexpected $end in /home/achmatim/public_html/artikel_demo/error-php/error4.1.php on line 15 Saat kita menemukan pesan kesalahan seperti di atas, terkadang kita bingung sendiri karena kesalahan justru menunjuk pada baris yang tidak ada perintah apapun yaitu baris ke-15. Error tersebut merupakan salah satu indikasi bahwa penyebab error adalah kurangnya kurung kurawal penutup. Yang harus dilakukan adalah dengan memeriksa setiap blok dalam program dan pastikan bahwa setiap kurawal buka { memiliki pasangan }. Disinilah kerapihan penulisan program akan sangat membantu penelusuran. Pada contoh program 4.1 di atas letak kesalahannya ada di baris ke-12 dimana kurawal buka pada blok SWITCH-CASE belum 4 http://framework.zend.com/manual/1.12/en/coding-standard.html 5 http://pear.php.net/manual/en/standards.php Halaman 9 dari 15
  • 10. 10 Penyebab Error Program PHP yang Paling Sering Ditemui | Achmatim.Net memiliki pasangan (belum ditutup). Contoh Program 4.2 1 <?php 2 function cetak_ganjil ($awal, $akhir) { 3 for ($i=$awal; $i<$akhir; $i++) { 4 if ($i%2 == 1) { 5 echo "$i "; 6 } 7 } 8 } 9 } 10 //pemanggilan fungsi 11 $a = 10; 12 $b = 50; 13 echo "<b>Bilangan ganjil dari $a sampai $b : </b><br>"; 14 cetak_ganjil($a, $b); 15 ?> Jika program di atas dijalankan maka akan ditampilkan pesan kesalahan sebagai berikut: Parse error: syntax error, unexpected '}' in /home/achmatim/public_html/artikel_demo/error-php/error4.2.php on line 9 Berbeda dengan contoh program 4.1, pada contoh program 4.2 justru kelebihan kurung kurawal penutup sehingga ditampilkan error program seperti di atas. Pada pesan kesalahan ditunjukkan bahwa error berada pada baris ke-9, namun sebenarnya kelebihan kurawal berada di baris ke-8. Hapus kurawal } pada baris ke-8. Sekali lagi disini gaya penulisan program yang baik akan sangat membantu proses identifikasi kesalahan. Jika salah dalam menghapus kurung kurawal seringkali akan menimbulkan error yang lain, sehingga diperlukan ketelitian dan pengalaman dalam menangani error serupa. 5. Kesalahan Nama Variabel Variabel merupakan tempat penyimpanan suatu nilai dalam program. Variabel terdiri dari 2 (dua) jenis, yaitu variabel bawaan (built-in) dari PHP dan variabel yang didefinisikan oleh programmer. Untuk jenis yang kedua, kita dapat mendefinisikan variabel sesuai kebutuhan, namun penamaannya harus mengikuti aturan-aturan yang telah ditetapkan PHP. Beberapa aturan dasar antara lain harus diawali dengan tanda $ dan diikuti dengan huruf atau garis bawah ( _ ), tidak boleh diawali dengan angka, tidak boleh mengandung karakter khusus seperti spasi, tanda '$' dan tanda '+', dan seterusnya. Kesalahan dalam penamaan variabel dapat menyebabkan error program. Berikut ini contoh error program yang disebabkan karena kesalahan penamaan variabel. Halaman 10 dari 15
  • 11. 10 Penyebab Error Program PHP yang Paling Sering Ditemui | Achmatim.Net Contoh Program 5.1 1 <?php 2 $nim = "0411500400"; 3 $nama = 'Chotimatul Musyarofah'; 4 $umur = 23; 5 $3nilai = 82.25; 6 $status = TRUE; 7 echo "NIM : " . $nim . "<br>"; 8 echo "Nama : $nama<br>"; 9 print "Umur : " . $umur; print "<br>"; 10 printf ("Nilai : %.3f<br>", $nilai); 11 12 if ($status) 13 echo "Status : Aktif"; 14 else 15 echo "Status : Tidak Aktif"; 16 ?> Jika program di atas dijalankan maka akan ditampilkan pesan kesalahan sebagai berikut: Parse error: syntax error, unexpected T_LNUMBER, expecting T_VARIABLE or '$' in /home/achmatim/public_html/artikel_demo/error-php/error5.1.php on line 5 Pada baris ke-5 program 5.1 di atas terdapat pendefinisian variabel $3nilai. Nama variabel tersebut tidak diijinkan karena setelah tanda $ terdapat karakter angka. Seharusnya setelah tanda $ diikuti oleh huruf atau karakter garis-bawah ( _ ). Untuk memperbaiki program di atas, tentu dengan mengganti nama variabel sesuai dengan ketentuan penamaan variabel yang benar. 6. Variabel Belum Didefinisikan Dalam hal penanganan variabel, PHP memang memiliki keleluasaan seperti variabel tidak perlu dideklarasikan. Kita dapat langsung mendefinisikan isi dari variabel tanpa perlu dipusingkan dengan deklarasi atau tipe data dari variabel. Tipe data akan ditentukan oleh PHP berdasarkan isi dari variabelnya. Namun demikian, kita tetap perlu memahami bahwa pada suatu kondisi, penggunaan variabel yang belum terdefinisikan sebelumnya dapat menyebabkan munculnya error program. Sebagai contoh dalam program 6.1 berikut ini. Contoh Program 6.1 1 <?php 2 for($i=1; $i<=10; $i++) { 3 $total = $total + $i; 4 } 5 echo $total; 6 ?> Halaman 11 dari 15
  • 12. 10 Penyebab Error Program PHP yang Paling Sering Ditemui | Achmatim.Net Jika program di atas dijalankan maka akan ditampilkan pesan kesalahan sebagai berikut: Notice: Undefined variable: total in /home/achmatim/public_html/artikel_demo/error-php/error6.1.php on line 3 Maksud dari program 6.1 di atas adalah ingin menghitung dan menampilkan total dari 10 bilangan bulat yang dimulai dari 1. Dengan demikian terdapat variabel $total yang akan diisikan hasil penjumlahan untuk setiap bilangan dari 1 hingga 10. Perhatikan baris ke-3 program dimana terdapat perintah $total = $total + $i;. Pesan kesalahan muncul karena pada saat perulangan baru dimulai ($i = 1) nilai awal dari $total yang ditambahkan dengan nilai $i belum terbentuk atau belum ada. Untuk mengatasi error tersebut, kita perlu mendefinisikan nilai awal dari $total sebelum perulangan untuk menghitung total. Karena $total pasti akan bernilai bilangan bulat, maka kita dapat memberi nilai awal $total dengan 0, sehingga perintah yang perlu ditambahkan adalah $total = 0. 7. Mengakses Index Array yang Tidak Ada Seperti halnya variabel, dalam hal penanganan array, PHP juga tidak memerlukan pendeklarasian awal maupun penentuan jumlah elemen dari array. Akan tetapi, pengaksesan elemen array yang tidak ada atau belum terbentuk akan menyebabkan error seperti pada contoh program 7.1 berikut ini. Contoh Program 7.1 1 <?php 2 $arrBuah = array ("Mangga", "Apel", "Pisang", "Jeruk"); 3 echo $arrBuah[0]; //Mangga 4 echo $arrBuah[4]; //Jeruk 5 ?> Jika program di atas dijalankan maka akan ditampilkan pesan kesalahan sebagai berikut: Notice: Undefined offset: 4 in /home/achmatim/public_html/artikel_demo/error-php/error7.1.php on line 4 Pada program 7.1 diatas terdapat sebuah variabel array dengan nama $arrBuah yang didefinisikan berisi 4 elemen. Index dari elemen array secara default diawali dengan 0, sehingga elemen array tersebut dapat diakses dengan index 0, 1, 2 dan 3. Pesan kesalahan terjadi karena pada baris ke-4, program mengakses elemen dengan index 4, dimana index array tersebut tidak ada atau belum terbentuk. Jika ingin mengakses elemen terakhir dari $arrBuah tersebut, maka seharusnya menggunakan index 3. 8. Pembagian dengan Nol Perhitungan matematika di dalam program seringkali diperlukan, misalnya dalam kaitannya dengan perhitungan gaji, perhitungan total pemesanan barang, dan sebagainya. Terkait dengan perhitungan matematis tersebut, kita perlu jeli dalam penerapannya, terutama jika Halaman 12 dari 15
  • 13. 10 Penyebab Error Program PHP yang Paling Sering Ditemui | Achmatim.Net berkaitan dengan pembagian. Dalam matematika, pembagian dengan bilangan 0 akan menghasilkan nilai yang tidak terdefinisi. Dalam program, pembagian dengan bilangan 0 akan menyebabkan adanya error “Division by zero”. Berikut ini contoh sederhananya: Contoh Program 8.1 1 <?php 2 $a = 10; 3 $b = 0; 4 5 echo $a / $b; 6 ?> Jika program di atas dijalankan maka akan ditampilkan pesan kesalahan sebagai berikut: Warning: Division by zero in /home/achmatim/public_html/artikel_demo/error- php/error8.1.php on line 5 Perhatikan program 8.1 di atas. Nilai variabel $a adalah 10, $b adalah 0. Pada baris ke-5 terdapat perintah untuk menampilkan hasil pembagian $a / $b, yang berarti 10 / 0. Tentu hal tersebut akan menyebabkan error seperti terlihat pada contoh di atas. 9. Memanggil Fungsi yang Belum Terdefinisi Setiap fungsi, baik fungsi built-in maupun fungsi buatan, yang dipanggil dalam program PHP, harus sudah didefinisikan terlebih dahulu. Fungsi built-in sudah didefinisikan oleh PHP sehingga tidak perlu didefinisikan lagi, contohnya fungsi strlen(), addslashes(), explode(), date() dan sebagainya. Sementara itu, fungsi buatan harus didefinisikan sendiri oleh programmer dan letak pendefinisian fungsi dapat diakses oleh bagian program yang memanggilnya. Pemanggilan fungsi yang belum terdefinisi atau kesalahan penulisan nama fungsi saat pemanggilan sering terjadi sehingga menyebabkan pesan kesalahan. Pada contoh program berikut ini terdapat kesalahan penulisan fungsi addslashes() sehingga menyebabkan error “Call to undefined function”. Contoh Program 9.1 1 <?php 2 $str = "Is your name O'Reilly ?"; 3 $str2 = addlashes ($str); 4 $str3 = stripslashes ($str2); 5 echo "<b>String asli</b> : $str"; 6 echo "<br><b>addslashes()</b> : $str2"; 7 echo "<br><b>stripslashes()</b> : $str3"; 8 ?> Jika program di atas dijalankan maka akan ditampilkan pesan kesalahan sebagai berikut: Halaman 13 dari 15
  • 14. 10 Penyebab Error Program PHP yang Paling Sering Ditemui | Achmatim.Net Fatal error: Call to undefined function addlashes() in /home/achmatim/public_html/artikel_demo/error-php/error9.1.php on line 3 10. Menyertakan File (Include) yang Tidak Ada Pada aplikasi berbasis PHP, menyertakan (include) file sudah biasa dilakukan. Misalnya pada saat program harus menyertakan library seperti Smarty, FPDF, JPGraph dan sebagainya. Untuk menyertakan file lain dalam PHP dapat menggunakan fungsi include(), include_once(), require() atau require_once(). Masing-masing memiliki perbedaan penggunaannya. Penyertaan file yang tidak benar, baik karena filenya tidak ada, path atau lokasi file yang salah maupun akses terhadap file tidak diijinkan, dapat menyebabkan error program. Contohnya pada program 10.1 berikut ini. Contoh Program 10.1 1 <?php 2 include "koneksi.php"; 3 echo "testing"; 4 ?> Jika program di atas dijalankan maka akan ditampilkan pesan kesalahan sebagai berikut: Warning: include(koneksi.php): failed to open stream: No such file or directory in /home/achmatim/public_html/artikel_demo/error- php/error10.1.php on line 2 Warning: include(): Failed opening 'koneksi.php' for inclusion (include_path='.:/usr/share/php:/usr/share/pear') in /home/achmatim/public_html/artikel_demo/error-php/error10.1.php on line 2 File koneksi.php yang disertakan dalam program 10.1 di atas tidak ada sehingga pesan kesalahan “failed to open stream” muncul. Dengan demikian, kita harus pastikan bahwa file yang kita include-kan benar-benar ada dan diakses dengan benar. Demikianlah 10 Penyebab Error Program dalam PHP beserta 19 contoh programnya. Semoga dengan artikel ini, kita semua dapat lebih memahami bagaimana menangani pesan kesalahan atau error program yang terjadi dalam proses pembelajaran kita. Dan yang terpenting dalam proses pembelajaran PHP adalah konsistensi serta kesungguhan kita dalam mencoba sebanyak-banyaknya contoh program sehingga kemampuan PHP akan semakin meningkat. Semoga tutorial ini bermanfaat untuk kita semua. Selamat hari Sumpah Pemuda, 28 Oktober 2012. Satu Nusa, Satu Bangsa, Satu Bahasa, Satu Karya untuk Indonesia! Halaman 14 dari 15
  • 15. 10 Penyebab Error Program PHP yang Paling Sering Ditemui | Achmatim.Net Referensi Terkait • Buku Gratis Pemrograman Web dengan PHP & MySQL. http://achmatim.net/buku- gratis/pemrograman-web-dengan-php-dan-mysql/ • PHP List Parser of Tokens. http://php.net/manual/en/tokens.php • Mengenal Error Dalam Program. http://achmatim.net/2008/11/17/mengenal-error- dalam-program/ Tentang Penulis Achmad Solichin. Adalah Lulusan Teknik Informatika, Fakultas Teknologi Informasi, Universitas Budi Luhur, Jakarta (S1, 2005) dan Magister Teknologi Informasi, Universitas Indonesia (S2, 2010). Saat ini sedang menempuh program Doktoral dalam bidang Ilmu Komputer di Universitas Gadjah Mada, Jogjakarta. Kegiatan sehari-hari adalah sebagai Dosen di Universitas Budi Luhur (http://www.budiluhur.ac.id). Kegiatan lain aktif sebagai programmer, web developer, system analyst, konsultan dan memberikan pelatihan di berbagai bidang komputer serta membuat tutorial-tutorial praktis di bidang komputer. Penulis memiliki situs utama di http://achmatim.net yang berisi berbagai tutorial praktis di bidang komputer serta menyediakan buku gratis komputer. Penulis dapat dihubungi melalui email di achmad.solichin@budiluhur.ac.id dan achmatim@gmail.com, YM achmatim, Facebook achmatim dan Twitter @achmatim. Lisensi Dokumen Seluruh isi dalam dokumen ini dapat digunakan, dimodifikasi dan disebarluaskan secara bebas untuk tujuan pendidikan, pembelajaran dan bukan komersial ( non profit), dengan syarat tidak menghilangkan, menghapus atau mengubah atribut penulis dokumen ini dan pernyataan dalam lisensi dokumen yang disertakan di setiap dokumen. Tidak diperbolehkan mengkomersialkan tutorial ini kecuali mendapatkan ijin terlebih dahulu dari penulis. Halaman 15 dari 15