This is default featured post 1 title

Go to Blogger edit html and find these sentences.Now replace these sentences with your own descriptions.This theme is Bloggerized by Lasantha Bandara - Premiumbloggertemplates.com.

This is default featured post 2 title

Go to Blogger edit html and find these sentences.Now replace these sentences with your own descriptions.This theme is Bloggerized by Lasantha Bandara - Premiumbloggertemplates.com.

This is default featured post 3 title

Go to Blogger edit html and find these sentences.Now replace these sentences with your own descriptions.This theme is Bloggerized by Lasantha Bandara - Premiumbloggertemplates.com.

This is default featured post 4 title

Go to Blogger edit html and find these sentences.Now replace these sentences with your own descriptions.This theme is Bloggerized by Lasantha Bandara - Premiumbloggertemplates.com.

This is default featured post 5 title

Go to Blogger edit html and find these sentences.Now replace these sentences with your own descriptions.This theme is Bloggerized by Lasantha Bandara - Premiumbloggertemplates.com.

Saturday, March 5, 2011

Building a Simple Blogger with the Code Igniter PHP Framework

In case you haven't heard about it, Code Igniter is a powerful, comprehensive framework written in PHP 4 that provides developers with a robust set of classes and helpers that can be used for building different web applications by means of the Model-View-Controller pattern, which separates application logic from visual presentation.

Thus, in this series of articles I'm going to explain how to build a basic blogger with Code Igniter. I will explain it in a step-by-step fashion to allow you to get an excellent grounding in its main features, as well as learn how to implement the MVC approach in a real-world situation.

This is a sample blog with Code Igniter you can download it here.

Wednesday, February 23, 2011

create and configure htaccess for codeigniter

  1. Create .htaccess file on index.php.
    RewriteEngine On
    RewriteBase /sitename
    RewriteCond %{REQUEST_URI} ^system.*
    RewriteRule ^(.*)$ /index.php/$1 [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)$ index.php/$1 [L]
    
    
    php_flag display_errors on
  2. Enable rewrite_module on apache server.
  3. Enable include_module on apache server.
  4. Enable cgi_module on apache server.
  5. Enable short open tag on php server.
  6. Configure config.php become.
    $config['index_page'] = "";

Thursday, February 3, 2011

Install mikrotik in VMware

  1. Install VMware.
  2. Create virtual machine for windowsclient New->Virtual Machine.
  3. Edit Windows client virtual machine setting
  4. For windows client Network adapter1->VMnet1
  5. Create virtual machine for mikrotik New->Virtual Machine.
  6. Edit mikrotik Virtual Machine Setting
  7. For mikrotik Network adapter1->bridged and Netwok adapter2->VMnet1
  8. Add network address on network adapter1 (public)
  9. ip address add address=192.168.1.128/24 interface=ether1
  10. Add dns address
  11. ip dns set allow-remote-requests=yes primary-dns=192.168.1.254
  12. Set gateway address
  13. ip route add gateway=192.168.1.254
  14. Check connnection with ping request "ping google.com".
  15. Add network address on network adapter2 (local)
  16. ip address add address=172.168.1.254/24 interface=ether2
  17. Nat and masquerade firewall for continue data packet
  18. ip firewall nat add action=masquerade chain=srcnat out-interface=ether1
  19. Ip address setting for client
  20. ip address=172.168.1.2, gateway=172.168.1.254, dns=172.168.254
    

Monday, January 31, 2011

Facebook autocomplate style with jquery



FCBKcomplete allows to generate fancy facebook-like dynamic inputs with auto complete & pre added values.
website
demo
download

pharmacy relationship design database

The following is one form of examples of inter-relationship database design table for pharmacy

Friday, January 28, 2011

Make Auto Readmore on Blogspot

  1. Edit HTML and find </head>.
  2. Copy-paste and put this script bellow in above code script </head>, and continuous "Make Auto Read More Functions".
  3. <script type='text/javascript'>
    var thumbnail_mode = "float" ;
    
    summary_noimg = 250;
    summary_img = 250;
    img_thumb_height = 120;
    img_thumb_width = 120;
    </script>
    <script type='text/javascript'>
    
    //<![CDATA[
    
    function removeHtmlTag(strx,chop){
    if(strx.indexOf("<")!=-1)
    {
    var s = strx.split("<");
    for(var i=0;i<s.length;i++){
    if(s[i].indexOf(">")!=-1){
    s[i] = s[i].substring(s[i].indexOf(">")+1,s[i].length);
    }
    }
    strx = s.join("");
    }
    chop = (chop < strx.length-1) ? chop : strx.length-2;
    while(strx.charAt(chop-1)!=' ' && strx.indexOf(' ',chop)!=-1) chop++;
    strx = strx.substring(0,chop-1);
    return strx+'...';
    }
    function createSummaryAndThumb(pID){
    var div = document.getElementById(pID);
    var imgtag = "";
    var img = div.getElementsByTagName("img");
    var summ = summary_noimg;
    if(img.length>=1) {
    imgtag = '<span style="float:left; padding:0px 10px 5px 0px;"><img src="'+img[0].src+'" width="'+img_thumb_width+'px" height="'+img_thumb_height+'px"/></span>';
    summ = summary_img;
    }
    var summary = imgtag + '<div>' + removeHtmlTag(div.innerHTML,summ) + '</div>';
    div.innerHTML = summary;
    }
    //]]>
    </script>
  4. On EDIT HTML, check "Expand widget template" and found this script code bellow
  5. <data:post.body/>
  6. If you have been found <data:post.body>, copy-paste this script code bellow:
  7. <b:if cond='data:blog.pageType != "item"'>
    <div expr:id='"summary" + data:post.id'><data:post.body/></div>
    <script type='text/javascript'>createSummaryAndThumb("summary<data:post.id/>");</script>
    <span class='rmlink' style='float:left'><a expr:href='data:post.url' expr:title='data:post.title'>Read More »»»</a></span>
    </b:if>
    <b:if cond='data:blog.pageType == &quot;item&quot;'><data:post.body/></b:if>
    
  8. Save your template and see the result.

Create Authentication Login On Code Igniter With Extends Controller

  1. Create MY_Controller.php on /system/apllication/libraries/.
  2. <?php
    class MY_Controller extends Controller {
    
        function  My_Controller() {
            parent::Controller();
            $this->is_logged_in();
        }
    
        private function is_logged_in() {
            $this->ci =& get_instance();
            $this->ci->load->library('session');
            if(! $this->ci->session->userdata('login')) {
                redirect('login');
            }
        }
    
    }
    ?>
  3. Login Controller login.php
  4. <?
    
    /**
     * Login Class
     *
     *
     */
    class Login extends Controller {
     /**
      * Constructor
      */
     function login()
     {
      parent::Controller();
      $this->load->model('Login_model', '', TRUE);
     }
    
     /**
      * Check User Status, if login status it will appear in main page,
      * If Not it'll redirect in login page
      */
     function index()
     {
      if ($this->session->userdata('login') == TRUE)
      {
       redirect('home');
      }
      else
      {
       $this->load->view('login/login_view');
      }
     }
    
     /**
      * Login
      */
     function process_login()
     {
    
      $this->form_validation->set_rules('username', 'Username', 'required');
      $this->form_validation->set_rules('password', 'Password', 'required');
    
      if ($this->form_validation->run() == TRUE)
      {
       $username = $this->input->post('username');
       $password = $this->input->post('password');
    
       if ($this->Login_model->check_user($username, $password) == TRUE)
       {
        $row = $this->Login_model->data_user($username);
        $data = array('jbname' => $username, 'login' => TRUE, 'jbnama' => $row['nama'], 'jbid' => $row['id_user']);
        $this->session->set_userdata($data);
        redirect('home/');
       }
       else
       {
        $this->session->set_flashdata('message', 'Sorry, username and password is wrong');
        redirect('login/index');
       }
      }
      else
      {
       $this->load->view('login/login_view');
      }
     }
    
     /**
      * logout
      */
     function process_logout()
     {
      $this->session->sess_destroy();
      redirect('login', 'refresh');
     }
    }
    
  5. Make Model Login_model.php
  6. <?php
    /**
     * Login_model Class
     *
     *
     */
    class Login_model extends Model {
     /**
      * Constructor
      */
     function Login_model()
     {
      parent::Model();
     }
    
     // Inisialisation user table name
     var $table = 'user';
    
     /**
      * Check user table
      */
     function check_user($username, $password)
     {
      $password = md5($password);
      $query = $this->db->get_where($this->table, array('username' => $username, 'pass' => $password, 'aktif' => 1,
      'nm_module' => 'akd'), 1, 0);
    
      if ($query->num_rows() > 0)
      {
       return TRUE;
      }
      else
      {
       return FALSE;
      }
     }
    
     function data_user($username){
      $sql = "select id_user, nama from user where username = '$username' and nm_module = 'akd' ";
      $query = $this->db->query($sql);
      $row = $query->row_array();
      return $row;
     }
    
    }
    // END Login_model Class
    
    /* End of file login_model.php */
    /* Location: ./system/application/model/login_model.php */