IP address is showing in form action with CodeIgniter http://::1/codeigniter/ in html sourcecode

If ip address is displayed in form action or url

  • http://::1/yourproject/
  • http://127.0.0.1/yourproject/

Chances are you have left the base url blank

/*
|--------------------------------------------------------------------------
| Base Site URL
|--------------------------------------------------------------------------
|
| URL to your CodeIgniter root. Typically this will be your base URL,
| WITH a trailing slash:
|
|   http://example.com/
|
| WARNING: You MUST set this value!
|
| If it is not set, then CodeIgniter will try guess the protocol and path
| your installation, but due to security concerns the hostname will be set
| to $_SERVER['SERVER_ADDR'] if available, or localhost otherwise.
| The auto-detection mechanism exists only for convenience during
| development and MUST NOT be used in production!
|
| If you need to allow multiple domains, remember that this file is still
| a PHP script and you can easily do that on your own.
|
*/

$config['base_url'] = '';

Now days in latest versions of codeIgniter it is not recommend that you leave your base_url blank.

  • $config['base_url'] = 'http://localhost/yourproject/';
  • $config['base_url'] = 'http://www.example.com/';

And is always good to end url with /

You may need to create routes for your form here

application > config > routes.php

CodeIgniter 3: Routing

CodeIgniter 2: Routing


Update:

With CodeIgniter 3 + versions:

When you create a file remember you will have to have first letter ONLY upper case on file names and classes.

What will happen sometimes is that it all may well work in a localhost environment with lower case but when you go to a live server some times will throw errors or not submit forms correct etc.

Example: From Controllers This also applies to Models

This is valid

File name: Verifylogin.php

<?php

class Verifylogin extends CI_Controller {

    public function __construct() {
       parent::__construct();
    }

    public function index() {

    }

}

This is valid

File name: Verify_login.php

<?php

class Verify_login extends CI_Controller {

    public function __construct() {
       parent::__construct();
    }

    public function index() {

    }

}

This is not valid

File name: verifylogin.php

class verifylogin extends CI_Controller {

    public function __construct() {
       parent::__construct();
    }

    public function index() {

    }

}

This is not valid

File name: Verify_Login.php

class Verify_Login extends CI_Controller {

    public function __construct() {
       parent::__construct();
    }

    public function index() {

    }

}

Codeigniter Doc's


Go to application/config/config.php set base_url

$config['base_url'] = 'http://localhost/example/';

And refresh your application

Then ::1 error should be gone.