summaryrefslogtreecommitdiffstats
path: root/user_guide_src/source/general/errors.rst
diff options
context:
space:
mode:
Diffstat (limited to 'user_guide_src/source/general/errors.rst')
-rw-r--r--user_guide_src/source/general/errors.rst75
1 files changed, 75 insertions, 0 deletions
diff --git a/user_guide_src/source/general/errors.rst b/user_guide_src/source/general/errors.rst
new file mode 100644
index 000000000..0764e9db8
--- /dev/null
+++ b/user_guide_src/source/general/errors.rst
@@ -0,0 +1,75 @@
+##############
+Error Handling
+##############
+
+CodeIgniter lets you build error reporting into your applications using
+the functions described below. In addition, it has an error logging
+class that permits error and debugging messages to be saved as text
+files.
+
+.. note:: By default, CodeIgniter displays all PHP errors. You might
+ wish to change this behavior once your development is complete. You'll
+ find the error_reporting() function located at the top of your main
+ index.php file. Disabling error reporting will NOT prevent log files
+ from being written if there are errors.
+
+Unlike most systems in CodeIgniter, the error functions are simple
+procedural interfaces that are available globally throughout the
+application. This approach permits error messages to get triggered
+without having to worry about class/function scoping.
+
+The following functions let you generate errors:
+
+show_error('message' [, int $status_code= 500 ] )
+===================================================
+
+This function will display the error message supplied to it using the
+following error template:
+
+application/errors/error_general.php
+
+The optional parameter $status_code determines what HTTP status code
+should be sent with the error.
+
+show_404('page' [, 'log_error'])
+==================================
+
+This function will display the 404 error message supplied to it using
+the following error template:
+
+application/errors/error_404.php
+
+The function expects the string passed to it to be the file path to the
+page that isn't found. Note that CodeIgniter automatically shows 404
+messages if controllers are not found.
+
+CodeIgniter automatically logs any show_404() calls. Setting the
+optional second parameter to FALSE will skip logging.
+
+log_message('level', 'message')
+================================
+
+This function lets you write messages to your log files. You must supply
+one of three "levels" in the first parameter, indicating what type of
+message it is (debug, error, info), with the message itself in the
+second parameter. Example::
+
+ if ($some_var == "") {     log_message('error', 'Some variable did not contain a value.'); } else {     log_message('debug', 'Some variable was correctly set'); } log_message('info', 'The purpose of some variable is to provide some value.');
+
+There are three message types:
+
+#. Error Messages. These are actual errors, such as PHP errors or user
+ errors.
+#. Debug Messages. These are messages that assist in debugging. For
+ example, if a class has been initialized, you could log this as
+ debugging info.
+#. Informational Messages. These are the lowest priority messages,
+ simply giving information regarding some process. CodeIgniter doesn't
+ natively generate any info messages but you may want to in your
+ application.
+
+.. note:: In order for the log file to actually be written, the "logs"
+ folder must be writable. In addition, you must set the "threshold" for
+ logging in application/config/config.php. You might, for example, only
+ want error messages to be logged, and not the other two types. If you
+ set it to zero logging will be disabled.