i (am) Blogger and U?

from X-periment to X-perience

Aplikasi Web: URL Shortener Complete 1

URL Shortener Complete 1 adalah aplikasi yang membantu Anda untuk menjalankan situs/web yang memiliki fasilitas URL shortener. Pemendek URL sesuai namanya berfungsi untuk memangkas alam [...]

One-Page Portofolio / Gallery 1

One-Page Portofolio/Gallery adalah paket aplikasi web yang memfasilitasi Anda baik perseorangan maupun korporat yang ingin menampilkan/memajang portofolio/hasil karya/gallery kegiatan/p [...]

Aplikasi Web: WebReview-Series 2

Web Review-Series 2 memiliki fitur-fitur yang sama persis dengan Web Review-Series 1 tapi dengan theme/template yang berbeda (theme yang dipakai pada versi ini adalah theme yang respons [...]

Online Shop Basic 1

Online Shop Basic 1 adalah paket minimalis aplikasi toko online instan yang dapat digunakan untuk menjalankan bisnis secara online. Aplikasi ini adalah aplikasi toko online yang "sudah [...]

Anime/Movie Community Sharing (FullCustom)

Produk ini adalah aplikasi web full-custom yang diperuntukkan bagi Anda yang ingin membuat situs/web yang dapat menampilkan anime/movie dan dapat ditonton oleh para pengunjung. Video an [...]

One-Page Portofolio / Gallery 2

One-Page Portofolio / Gallery 2 memiliki fitur-fitur yang sama persis dengan One-Page Portofolio / Gallery 1 tapi dengan theme/template yang berbeda (theme yang dipakai pada versi ini a [...]

2010
28Jan

Bagian 2: Cara-cara Mengamankan Aplikasi Web CodeIgniter, Another Error Reporting

Post category: Web Development

Setelah pada bagian pertama kita telah sedikit membahas tentang penonaktifan error reporting di framework MVC CodeIgniter, maka kali ini kita akan membahas error reporting yang lain. Mengapa demikian? Karena ketika anda sudah melakukan tips pertama, ternyata ketika aplikasi berjalan dan ada error, maka error reporting yang lain masih menampilkan pesan error yang bisa jadi membahayakan aplikasi yang telah anda buat.

Error reporting yang saya maksud adalah ketika terjadi error ketika mengakses database misalnya tabel yang anda acu ternyata tidak ada (memang tidak ada atau anda salah mengetikkan namanya), jumlah kolom yang tidak sesuai, kesalahan insert database dst maka CodeIgniter akan menampilkan error yang tentu saja ikut menampilkan nama database dan beberapa informasi lainnya. Hal ini akan menguntungkan ketika yang menemui error adalah anda sebagai administrator tapi akan membahayakan manakala yang melihat error semacam ini adalah pengunjung atau orang lain yang kita tidak ketahui apa yang akan dilakukannya dengan informasi yang ia dapatkan.

Salah satu error reporting yang berkenaan dengan database bisa anda lihat di bawah ini (error ini terjadi ketika table yang diacu tidak ada di database):
A Database Error Occurred
Error Number: 1146
Table 'z1234567_dbase.my_comments' doesn't exist
SELECT COUNT(*) AS `numrows` FROM (`my_comments`) WHERE `status` = 0

Untuk menghindari hal semacam ini terjadi maka anda bisa menonaktifkan error reporting yang berkenaan dengan database. Ikuti langkah singkat berikut:

  1. Temukan file bernama error_db.php yang ada di /root_codeigniter/system/application/errors
  2. Buka file error_db.php dan lihat (kalau di tempat saya) baris 30 dan 31 ada code seperti ini:
    <h1><?php echo $heading; ?></h1>
    <?php echo $message; ?>

    Kemudian ganti menjadi seperti ini:
    <h1><?php // echo $heading; ?></h1>
    <?php // echo $message; ?>

Atau silahkan dihapus aja semuanya kalau mau, tapi saya lebih suka begini supaya nanti kalau terjadi error tinggal menghapus comment dan kita bisa melihat error di bagian mana sehingga lebih mudah dicari solusinya.


No comments...
>> Comments closed. <<