Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Jak mogę zatrzymać wiele e-maili LUB nazwy użytkownika?

Możesz spróbować zrobić:

connect_db();
$check = mysql_query("SELECT 'User' validation
                        FROM school_users 
                       WHERE username = '$username' 
                       UNION ALL
                      SELECT 'Email' 
                        FROM school_users 
                       WHERE email = '$email'") or die(mysql_error());
$row = mysql_fetch_assoc($check);

if($row)
{
    if ($row["validation"] == 'User') {
            respond("error", "Sorry, the username ".$_POST['username']." is already in use. Please choose a different username.");}}
    else if ($row["validation"] == 'Email') {
        respond("error", "Sorry, the email ".$_POST['email']." is already in use. Please choose a different email.");}}
}

ALBO możesz po prostu zrobić to osobno...

//Validate UserName
connect_db();
$check = mysql_query("SELECT username FROM school_users WHERE username = '$username'") or die(mysql_error());
$check2 = mysql_num_rows($check);

if ($check2 != 0) {
    respond("error", "Sorry, the username ".$_POST['username']." is already in use. Please choose a different username.");}

//Validate Email
connect_db();
$checkEmail = mysql_query("SELECT email FROM school_users WHERE email = '$email'") or die(mysql_error());
$checkEmail2 = mysql_num_rows($check);

if ($checkEmail2 != 0) {
    respond("error", "Sorry, the email ".$_POST['email']." is already in use. Please choose a different email.");}

Dodatkowo Twój kod jest podatny na ataki SQL Injection i używasz przestarzałych funkcji php MySQL. Jeśli chcesz, aby Twój kod był lepszy i mniej podatny na ataki, spójrz na następujące linki:

Dlaczego nie powinienem używać funkcji mysql_* w PHP?

Czego mogę użyć zamiast funkcji mysql_?

Wstępne oświadczenia

Przygotowane wyciągi z MySQLi



  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 STR_TO_DATE nie działa

  2. Sprawdzanie dostępności AJAX na żywo za pomocą przycisku przesyłania

  3. ErrorException:pośrednia modyfikacja przeciążonej właściwości App\Answer::$attribute nie ma żadnego wpływu

  4. Monitorować tabelę MySQL pod kątem zmian w programie C#?

  5. Jak LUB dwa stwierdzenia LIKE?