How to Check Existing User in Database using PHP MVC with an example
In this example, we using Models, Views, Controller Structure for Checking Existing User in the database.
To Check Existing User in the database first we have to create a table.
register table
CREATE TABLE IF NOT EXISTS `register` (
`id` int(11) NOT NULL,
`user_name` varchar(50) NOT NULL,
`email_id` varchar(50) NOT NULL,
`password` varchar(50) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
Here is the model file which we are using for check user.
The file register_model.php is created under Models folder
models/register_model.php
<?php
class Register_Model extends Model
{
public function __construct()
{
parent::__construct();
}
public function check_user($user_name,$email_id)
{
$result= $this->db->select("SELECT * FROM `register` WHERE user_name = '".$user_name."' OR email_id = '".$email_id."'");
$count = count($result);
return $count;
}
public function insert_user($data)
{
$this->db->insert('register', $data);
}
}
?>
Here is the view file register.php which inside views folder contains the form
views/register/register.php
<!DOCTYPE html>
<html>
<body>
<form method="post" action="<?php echo URL; ?>register/check_user">
First name:<br>
<input type="text" name="user_name" >
<br>
Last name:<br>
<input type="text" name="email_id">
<br><br>
Password:<br>
<input type="password" name="password">
<br><br>
<input type="submit" value="Submit">
</form>
</body>
</html>
Here is the Controller file register.php which inside controllers folder
controllers/register.php
<?php
class Register extends Controller
{
public function __construct()
{
parent::__construct();
}
function check_user(){
$user_name=$_POST['user_name'];
$email_id=$_POST['email_id'];
$count=$this->model->check_user($user_name,$email_id);
if($count > 0){
echo 'This User Already Exists';
}
else{
$data = array(
'id' =>null,
'user_name' =>$_POST['user_name'],
'email_id' =>$_POST['email_id'],
'password' =>$_POST['password']
);
$this->model->insert_user($data);
}
header('location:register');
}
}
?>
Path: localhost/project_folder_name/view_folder_name/view_filename
Example: localhost/mvc/register/register
No comments:
Post a Comment