0

How to check email address or username is valid or exist through same post?

HTML

 <form action="/index" method="post">
             <input name="post" type="text" value="Username or Email" />
             <input name="submit" name="send" value="Submit" />
        </form>

PHP

  public function index($post) 
        {
            $results = $this->db->where('username', $post)
                                ->where('email', $post)
                                ->get('users');

            if($results->num_rows() > 0)
            {
              //The user has an email or username
              echo "valid";
            } else {
              echo "Invalid";
            }
        }
Mehur
  • 131
  • 1
  • 3
  • 11

2 Answers2

1

Change the second ->where clause to ->or_where

public function index($post) 
    {
        $results = $this->db->where('username', $post)
                            ->or_where('email', $post)
                            ->get('users');

        if($results->num_rows() > 0)
        {
          //The user has an email or username
          echo "valid";
        } else {
          echo "Invalid";
        }
    }

Take a look at this document for reference Active Record : CodeIgniter

  • Thank you. Can you answer this http://stackoverflow.com/questions/40238671/ajax-upload-not-working-codeigniter ? – Mehur Oct 25 '16 at 16:41
0

replace HTML
value -> placeholder

replace Codeigniter
where -> or_where fixed and add a comment.

<form action="/index" method="post">
   <input name="post" type="text" placeholder="Username or Email" />
   <input name="submit" name="send" placeholder="Submit" />
</form>
public function index($post) 
{
    $results = $this->db->where('username', $post)
                        ->or_where('email', $post) //where[or] : on the condition
                        ->get('users');

    if($results->num_rows() > 0) //The user has an email or username
    {
        echo "valid";
    }
    else
    {
        echo "Invalid";
    }
}
F. Kim
  • 53
  • 1
  • 9