Những chỉ mục dưới đây chỉ áp dụng trong trường hợp lập trình (nhằm mục đích lập trình dễ, hạn chế phát sinh lỗi), còn trong trường hợp chạy thực tế, bạn nên khôi phục những hướng dẫn bên dưới về lại code mặc định.
1. Luôn hiển thị các dòng báo lỗi cảnh báo - Thông báo từ hệ thống.
Chắc hẳn trong quá trình lập trình NukeViet (lập trình hệ thống, module, theme,.....) hay trong quá trình sử dụng, ít nhiều gì người dùng cũng thấy những dòng cảnh báo như thế này. Lỗi cảnh báo này xuất hiện có lỗi logic xảy ra ở code, song không làm ảnh hưởng đến các đoạn mã khác, được hệ thống hiển thị nhắc nhở người dùng về tính đúng đắn của đoạn mã đó.
Trong NukeViet, những dòng thông báo lỗi này chỉ được hiển thị một lần, sau đó dấu đi bằng cách ghi vào cache (khi xóa
cache - dọn dẹp hệ thống thì sẽ thấy lại nếu chưa được sửa lỗi), cứ như thế người lập trình sẽ không xem được các dòng lỗi một cách liên tiếp. Các bước dưới đây sẽ bỏ đi giai đoạn ghi lỗi vào bộ nhớ đệm, nên những dòng lỗi sẽ luôn được hiển thị.
Mở
includes/class/error.class.php
Tìm và xóa (hoặc comment) dòng (khoảng dòng 402)
file_put_contents( $track_errors, '', FILE_APPEND );
2. Hiển thị chi tiết lỗi khi bị các lỗi liên quan đến PHP.
Trong quá trình lập trình thao tác với CSDL, nếu có lỗi, hệ thống sẽ không hiển thị thông báo lỗi mà hiển thị nền trang trắng.
Hướng dẫn dưới đây giúp hiển thị thông báo lỗi của php, khi có sự cố xảy ra.
Mở includes/mainfile.php
Tìm và xóa (hoặc comment) những đoạn code
error_reporting(0);
và....
$ErrorHandler = new NukeViet\Core\Error($global_config);
set_error_handler(array(
&$ErrorHandler,
'error_handler'
));
Lưu ý: Khi đưa vào chạy thực tế, hãy khôi phục những đoạn mã này về mặc định
3. Hiển thị chi tiết lỗi liên quan đến CSDL
Hãy đặt đoạn code (hoặc toàn bộ code) nghi phát sinh lỗi vào khối lệnh
try catch
try
{
// Đặt code vào đây....
$db->query( '' );
}
catch( PDOException $e )
{
die( $e->getMessage( ) );
}