Mengenal dan Memahami Pesan Eror pada PHP

Assalamualaikum wr.wb

Pada Kesempatan kali ini saya akan membahas tentang eror. eror apa? eror pada php yang biasa kita jumpai setiap koding.

1. Latar Belakang
PHP dikenal sebagai salah satu bahasa pemrograman web yang paling easygoing. Dari segi aturan mainnya nggak seketat bahasa pemrograman lainnya,, akan tetapi pada akhirnya sama aja bikin pusingnya ketika baris-baris program website kita menjadi error. Nah, kali ini izinkan saya sedikit membagikan beberapa macam error pada PHP yang cukup sering terjadi biar kita bisa perbaiki.

2. Maksud Tujuan
    Agar lebih memahami dan dapat mengerti dari bahasa eror tersebut.

3. Pembahasan
    Setiap orang seorang programer atau development pasti menjumpai eror saat melaksanakan koding. bahkan sampai menjadi langganan setiap pengerjaannya.
dan kali ini saya akan membahas pesan -pesan eror yang sering muncul apa peyebabnya dan bagaimana solusinya tentunya kita harus mengerti dari pesan tersebut.

A.NOTICE

  • Undefined Variable
Pesan Kesalahan kira-kira berbunyi seperti, "Notice : Undefined Variable .......". Penyebabnya adalah karena nvariabel yang kita sebutkan pada baris yang ditunjuk tidak dikenal. Sebagai contoh, perhatikan screenshot berikut beserta potongan codenya.

Contoh Script :
//Error Notice Undefined Variable
$nama = "Risa Nurhaeni";
echo "Nama saya adalah $name"; //<- Nama variabel salah ketik
Keterangan :
Seperti yang kita lihat pada pesan error, ada nama variabel "name" yang tidak dikenal pada baris ke-3. Kalau sudah seperti ini, kemungkinannya cuma 2.. Satu, kita belum deklarasi variabel dengan nama tersebut; Dua, variabel sudah dideklarasi, tapi kitanya yang salah tulis. Kalau di potongan code saya, pesan tersebut muncul karena masalah yg kedua tuh.. Saya mendeklarasikan $nama, tapi saya memanggil $name.. Jadi cara memperbaikinya ya cuma dengan menyamakan nama variabel yang dideklarasikan dengan yang disebut saja.
  • Undefined Index
Mirip seperti pesan Notice Undefined Variable, tapi yang menjadi fokusnya bukan pada variabel, melainkan pada index di baris yang bersangkutan. Kalau masih bingung index itu apaan, index itu yang ada didalam kurung kotak .yang biasanya dipakai array..

Beberapa Kemungkinan Penyebabnya adalah :
- Di Form HTML kita lupa bikin atribut method, atau method pada HTML tidak sesuai dengan method yang kita sebutkan di PHP. Misalkan di HTML kita bikin [form action="..." method="post"],, tapi di PHP kita memanggilnya dengan $_GET[...].
- Kita lupa ngasi nama di tag-tag input yang akan dikirim. Dicek aja satu-satu, barangkali ada tag [input], [select], [textarea], dsb yang lupa dikasi atribut name="...".
- Nama atribut di HTML berbeda dengan yang kita panggil di PHP. Coba aja dipastiin ulang, udah sama atau belum?

  • Undefined Constant
Awalnya saya sempat bingung kapan pake petik 2, petik 1, dan nggak pake petik.. Petik 1 biasa digunakan untuk mendefinisikan sebuah string maupun sebuah index. Misalnya seperti echo 'Akubisa', $_POST['Akubisa'].  Petik 2 juga gunanya sama seperti petik 1, tapi didalam petik 2 tersebut masih bisa diisi variabel lainnya. Misalnya, echo "Nama saya adalah $nama". Nggak pake petik dilakukan untuk string yang biasanya pake petik 1 tapi sedang diapit petik 2.. Misalnya echo "nama saya adalah $_POST[nama]".
Notice Undefined Constant ini muncul ketika di bagian yang seharusnya kita pakai tanda petik (entah petik 1 atau petik 2), tapi kita nggak mengisinya..

B. WARNING
[nama fungsi] Expect at least (n) parameter
Pesan kesalahan ini biasanya muncul ketika kita memanggil sebuah function, terlepas function buatan kita sendiri maupun function bawaan PHP.
  • Error Warning Expect Parameter
Seperti contoh fungsi explode() pada PHP seharusnya diinputkan minimal 2 parameter, tapi hanya diinputkan 1. Untuk mengatasi error warning seperti ini, pastikan kita menggunakan fungsi yang ada dengan benar.
  • Warning mysql_fetch_array() expects parameter 1 to be resource, Invalid Arguments Suplied for Foreach
2 macam error ini sengaja saya gabungkan menjadi 1. Ini adalah error yang erat kaitannya dengan database.
Terlepas kita menggunakan engine mysql maupun PDO, 2 error peringatan ini bisa muncul hanya karena 1 penyebab yang sama : SQL yang tidak valid. Cara memperbaikinya ya hanya dengan memastikan bahwa SQL inputan kita di perulangan while maupun foreach sudah benar.

C. PARSE ERROR
  • Syntax Error
Pada error-error sebelumnya hanya bersifat pemberitahuan dan peringatan, di Parse Error ini baris coding akan langsung distop eksekusi kalau ketemu error ini.. Parse Error Syntax Error seperti gambar dibawah ini :
Error macam ini bisa dibilang gampang gampang gurih.. Gampangnya sih karena dikasi tau baris permasalahannya di sekitar mana, seperti di contoh kan dikasi tau di baris ke-6 sekitar kata ECHO ada yang salah.. Akan tetapi yang kita analisis bukan hanya baris ke-6nya saja, melainkan kemungkinan di 1 baris sebelumnya juga.
Kira-kira dari contoh coding saya ketauan nggak salahnya dimana? Apakah beneran di baris 6? Ternyata gara-gara kurang titik koma di baris ke-4 lho.. Nah,, mesti agak jeli untuk mengatasi error macem ini.. :D Hal ini berlaku untuk segala jenis kemungkinan kesalahan.. Lupa titik koma, lupa tanda titik, lupa kurung tutup, dsb..
  • Unexpected End of File
Penyebabnya error udah bener-bener jelas cuma 1 : Ada kurung tutup (biasanya kurung kurawal) yang lupa kita tutup!! Sekalipun di error ini dijelaskan baris keberapa (dalam contoh dikasi tau baris ke-13),, tapi hal itu sama sekali nggak membantu.. Karena baris ke-13 itu nggak ada apa-apa..
Jadi cara mengatasinya? Yaa,, pilihannya cuma antara bikin lagi dari awal, atau ngecekin kurung buka dan kurung tutupnya satu-satu.. Iya gitu aja.
  • FATAL ERROR
Fatal Error Call to Undefined Function
Untuk error macam ini juga kita cuma perlu modal teliti doang.. Salah sebut / salah ketik nama fungsi akibatnya bisa begini.

  • Blank Error
Penyebab blank error itu sendiri adalah antara kesalahan logika, dan juga bisa karena kita membuat IF tanpa ELSE. Jadi ketika kita menjalankan tiba-tiba ada masalah yang tidak kita tahu, terus di coding kita sendiri nggak bikin kondisi untuk mengantisipasi kesalahan macam itu, jadilah blank error.. Kalau kata-kata itu terlalu susah, simpelnya sih coba dibiasakan selalu membuat ELSE pada setiap IF, sekalipun elsenya keliatannya nggak bakal kepake.

4. Kesimpulan
    Kesimpulannya adalah bahwa eror yang kita dapatkan bisa dari beragai macam penyebab langkah pertama yang harus kita lakukan saat menemui pes eror tersebut kita harus mengerti dulu apa maksud dari pesan tersebut.

5. Referensi
  • http://www.tianrosandhy.com/blog/mengenal+dan+mengatasi+pesan+error+pada+php

Sekian Terimakasih,
Wassalamualaikum wr.wb
Previous
Next Post »