Skip to content Skip to sidebar Skip to footer

Login Dengan Username Atau Email Di Php

Pada peluang sebelumnya Saya sudah mengulas wacana bagaimana menciptakan halaman login multi user  dimana pengguna/user yang ingin login harus memakai email dan password yang benar.

Lalu mungkin nantinya akan muncul pertanyaan – pertanyaan gres contohnya bagimana caranya pengguna sanggup login dengan memakai email atau username ? Kaprikornus jikalau ada pengguna memakai email ataupun username, mereka tetap sanggup masuk.
Pada peluang sebelumnya Saya sudah mengulas wacana bagaimana  Login melaluiataubersamaini Username atau Email di PHP

Teknik cepatdangampang Membuat Login melaluiataubersamaini Username atau Email di PHP

Untuk sanggup membuat pengguna sanggup login memakai username atau emailnya, caranya bahwasanya sangat gampang, kita sanggup memakai operator logika php yaitu dengan menambahkan operator logika OR atau ||.

Operator or dan || akan memiliki nilai yang benar jikalau salah satu dari nilai boolean bernilai benar, maka selain itu akan bernilai false. Kaprikornus nanti Anda tinggal pilih apakah mau memakai OR atau ||


Sebelumnya Query untuk menyidik username dan password didatabase ialah sebagai diberikut : 

Script login-proses.php

<?php include('koneksi.php'); session_start(); if(isset($_POST['login'])){  $user = mysql_real_escape_string(htmlentities($_POST['email']));  $pass = mysql_real_escape_string(htmlentities(md5($_POST['password'])));    $sql = mysql_query("SELECT * FROM user WHERE email='$user' AND password='$pass'") or die(mysql_error()); //simpan variabel pilih user  if(mysql_num_rows($sql) == 0){ //jika tidak ditemukan   echo '<script language="javascript">alert("User tidak ada!"); document.location="index.php";</script>';  }else{ //jika ditemukan   $row = mysql_fetch_assoc($sql);   if($row['level'] == 1){ // admin menurut level, jikalau level 1 berarti admin    $_SESSION['admin']=$user;    echo '<script language="javascript">alert("Anda berhasil Login Admin!"); document.location="admin/index.php";</script>';   }else{    if($row['level']==2){    $_SESSION['user']=$user; //berdasarkan kolom user    echo '<script language="javascript">alert("Anda berhasil Login Sebagai User!"); document.location="user/index.php";</script>';   }   }  } } ?>


Maka nanti Anda rubah menjadi ibarat diberikut 
Script login-proses.php

<?php include('koneksi.php'); session_start(); if(isset($_POST['login'])){  $user = mysql_real_escape_string(htmlentities($_POST['email']));  $pass = mysql_real_escape_string(htmlentities(md5($_POST['password'])));   $perintah = "SELECT * FROM user WHERE (username='$user' OR email='$user') AND password='$pass'";  $sql=mysql_query($perintah) or die(mysql_error()); //simpan variabel pilih user   if(mysql_num_rows($sql) == 0){ //jika tidak ditemukan   echo '<script language="javascript">alert("User tidak ada!"); document.location="index.php";</script>';  }else{ //jika ditemukan   $row = mysql_fetch_assoc($sql);   if($row['level'] == 1){ // admin menurut level, jikalau level 1 berarti admin    $_SESSION['admin']=$user;    echo '<script language="javascript">alert("Anda berhasil Login Admin!"); document.location="admin/index.php";</script>';   }else{    if($row['level']==2){    $_SESSION['user']=$user; //berdasarkan kolom user    echo '<script language="javascript">alert("Anda berhasil Login Sebagai User!"); document.location="user/index.php";</script>';   }   }  } } ?>


Kemudian bila nanti ingin menampilkan data usernya pun kita perlu menambahkan operator OR didalam query yang kita buat. Sebelumnya Query yang saya buat untuk menampilkan data user yang berhasil masuk ialah sebagai diberikut 

<?php include('sesi-user.php'); ?> <html> <head>  <title>Area User | root93.co.id</title> </head> <body>    <div style="text-align:center">   <h2>User Area</h2>   <p><a href="index.php">Home</a> / <a href="../logout.php">Logout</a></p>     <p>Anda login sebagai <?php echo $_SESSION['user']; ?></p>  </div>  <?php //testing query  include('../koneksi.php');  $user=$_SESSION['user'];  $perintah="SELECT * FROM user where email='$user'"; //pilih menurut login emailnya  $query=@mysql_query($perintah,$koneksi); //buart query $data=mysql_fetch_array($query); //pecah datanya   echo "Nama Saya: <b>$data[nama] </b>";   echo "<br/>Email Saya: <b>$data[email] </b>";   echo "<br/>Username Saya: <b>$data[username]</b>";   echo "<br/>level Saya: <b>$data[level] </b>";   echo "<br/>password Saya: <b> $data[password]</b>"; ?>  </body> </html>  




Nanti Scriptnya diatas Anda rubah, nanti di filter menurut username atau email, sehingga bila nanti pengguna  memakai username atau email datanya akan ditampilkan, jikalau misal kita filter spesialuntuk menurut data yang terdapat pada kolom email saja, maka kalau ada pengguna yang login dengan username datanya tidak akan ditampilkan

Maka nanti rubah menjadi ibarat ini

<?php include('sesi-user.php'); ?> <html> <head>  <title>Area User | root93.co.id</title> </head> <body>    <div style="text-align:center">   <h2>User Area</h2>   <p><a href="index.php">Home</a> / <a href="../logout.php">Logout</a></p>     <p>Anda login sebagai <?php echo $_SESSION['user']; ?></p>  </div>  <?php //testing query  include('../koneksi.php');  $user=$_SESSION['user'];  $perintah="SELECT * FROM user where (username='$user' OR email='$user')";   //pilih menurut login emailnya  $query=@mysql_query($perintah,$koneksi); //buart query $data=mysql_fetch_array($query); //pecah datanya   echo "Nama Saya: <b>$data[nama] </b>";   echo "<br/>Email Saya: <b>$data[email] </b>";   echo "<br/>Username Saya: <b>$data[username]</b>";   echo "<br/>level Saya: <b>$data[level] </b>";   echo "<br/>password Saya: <b> $data[password]</b>"; ?>  </body> </html>

Jadi kesimpulannya untuk sanggup membuat login dengan memakai username atau password, maka nanti Anda cukup menambahkan username OR/|| email pada query yang bertugas untuk menyidik username yang tersimpan di database 

Post a Comment for "Login Dengan Username Atau Email Di Php"