Mysql
 sql >> база данни >  >> RDS >> Mysql

Най-добрият начин да проверите за съществуващ потребител в базата данни на mySQL?

Използвайте WHERE клауза, за да получите само редове с даденото потребителско име:

"SELECT * FROM user_list WHERE uname='".$server->real_escape_string($uname)."'"

След това проверете дали заявката води до избор на редове (или 0, или 1 ред) с MySQLi_Result::num_rows :

function createUser($uname,$pword) {
    $server->connect(DB_HOST,DB_USER,DB_PASS,DB_NAME);
    $result = $server->query("SELECT * FROM user_list WHERE uname='".$server->real_escape_string($uname)."'");
    if ($result->num_rows() === 0) {
        if ($server->query("INSERT INTO user_list (uname) VALUES ('".$server->real_escape_string($uname)."'")) {
            echo "User added Successfully";
        } else {
            echo "Error while adding user!";
        }
    } else {
        echo "User already exists!";
    }
}


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL - DATE_ADD месечен интервал

  2. PreparedStatement хвърля синтактична грешка

  3. Какви са оптималните размери на varchar за MySQL?

  4. Име на базата данни MySQL по подразбиране

  5. PreparedStatement:Мога ли да задам името на колоната като параметър?