Thursday, July 22, 2010

Documentation of My Form validation of codeigniter

We have seen the weakness of Form validation class for codeigniter. Let's see how we can fix this short comings. I have an extended Form validation class of codeigniter. we will discuss it here:

First of all, we are going to combine our $_FILES and $_POST variables together. we use php's array_merge to merge them.

/**
     * Constructor
     *
     * @author Tahsin Hasan 
     * @return void
     * @access public
     */
    public function __construct() {
        $_POST = (count($_FILES) > 0) ? array_merge($_POST,$_FILES) : $_POST;
        parent::__construct();
    }

After merging them together, we call our parent constructor function.
/**
     * Allowed types rule
     *
     * @author Tahsin Hasan 
     * @return bool
     * @param  str String field name to validate
     * @param  types String allowed types
     * @access public
     */
    public function allowed_types($str, $types)
    {
        $type = explode(',', $types);
        $filetype = pathinfo($str['name'],PATHINFO_EXTENSION);
        return (in_array($filetype, $type)) ? TRUE : FALSE;
    }

We are using two new rules for upload functions: allowed_types and max_file_size. In the allowed_types function we can set a range of allowed file types for our uploaded file.

/**
     * Setting maximum file upload size
     *
     * @author Tahsin Hasan 
     * @return bool
     * @param  str String field name to validate
     * @param  size Integer maximum upload size in bytes
     * @access public
     */

    public function max_file_size($str, $size)
    {
        return ($str['size']<=$size) ? TRUE : FALSE;
    }
In the max_file_size rule we checking the uploaded file whether it is uploaded in the specified file upload size.
See the book OpenCart 1.4 Template Design Cookbook.
See the book Joomla Mobile Development Beginners Guide




List of my works:

Opencart Extensions:

  1. Product Based Quantity Wise Shipping: Find it here.
  2. OpenSSLCOMMERZ: integrate SSLCOMMERZ with opencart: Find it here.
  3. Fine Search v.1.0 - Improves Opencart search feature to find relevant: Find it here.
  4. Opensweetcaptcha - An easy way to generate attractive captcha for your system!: Find it here.
  5. Custom Field Product - add unlimited custom fields to the product form: Find it here.
  6. Formcaptcha - add captcha on the register page: Find it here.

My Books:

  1. OpenCart 1.4 Template Design Cookbook.
  2. Joomla Mobile Development Beginners Guide

No comments: