In this article, we will discuss, How to create a Sign up with MySQL database using the CodeIgniter 3.
1. Create a controller file Signup.php in the applications/controllers/ directory.
class Signup extends CI_Controller {
public function __construct() {
parent::__construct();
$this->load->model('signup_model');
}
public function sign_up() {
$this->load->view(‘sign_up’);
}
public function register() {
$name = $this->input->post('name');
$email = $this->input->post('email');
$password = $this->input->post('pass');
$phone = $this->input->post('phone');
$data = [
‘name’ => $name,
‘email’ => $email,
‘password’ => $password,
‘phone’ => $phone,
];
$result = $this->signup_model->is_user_exists($email);
if(!$result) {
$user = $this->signup_model->add($data);
if($user) {
echo “Your account created successfully”;
} else {
echo “Something went wrong.”;
}
} else {
echo “User is already exists.”;
}
}
}2. Create a model file Signin_model.php in the applications/models/ directory.
class Signup_model extends CI_Model {
public function add($data) {
return $this->db->insert(‘user_info’, $data);
}
public function is_user_exists($email) {
$this->db->where([‘email’ => $email]);
$query = $this->db->get(‘user_info’);
return $query->num_rows();
}
}3. Create a sign_up.php file in the applications/views/ directory.
<form method="post"
action="<?php echo base_url('user/register') ?>">
<table width="600" align="center"
border="1" cellspacing="5" cellpadding="5">
<tr>
<td colspan="2">
<?php echo $error; ?>
</td>
</tr>
<tr>
<td width="230">Enter Your Name</td>
<td width="329">
<input type="text" name="name" />
</td>
</tr>
<tr>
<td>Enter Your Email</td>
<td>
<input type="text" name="email" />
</td>
</tr>
<tr>
<td>Enter Your Mobile</td>
<td>
<input type="text" name="phone" />
</td>
</tr>
<tr>
<td>Enter Your Password</td>
<td>
<input type="password" name="pass" />
</td>
</tr>
<tr>
<td colspan="2" align="center">
<input type="submit" name="save"
value="Register" />
</td>
</tr>
</table>
</form>