Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

मैं एकाधिक ईमेल या उपयोगकर्ता नाम कैसे रोकूं?

आप ऐसा करने का प्रयास कर सकते हैं:

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.");}}
}

या आप इसे अलग से कर सकते हैं...

//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.");}

इसके अतिरिक्त, आपका कोड SQL इंजेक्शन हमलों के लिए असुरक्षित है और आप पदावनत MySQL php फ़ंक्शन का उपयोग कर रहे हैं। यदि आप अपने कोड को और बेहतर बनाना चाहते हैं, तो निम्न लिंक पर एक नज़र डालें:

मुझे mysql_* फ़ंक्शन का उपयोग क्यों नहीं करना चाहिए PHP में?

मैं mysql_ फंक्शन के बजाय क्या उपयोग कर सकता हूं?

तैयार किए गए विवरण

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. प्रत्येक विशिष्ट उम्मीदवार_आईडी की सबसे हाल की तारीख वाली पंक्तियों से डेटा लौटाएं

  2. मैं अपने डेटाबेस कनेक्शन को कैसे सुरक्षित बना सकता हूँ?

  3. MySQL ALTER TABLE टेबल पर डुप्लिकेट करने के लिए बहुत बड़ा है

  4. नोडज MySQL में कनेक्शन पूल में डेटाबेस स्विच करें

  5. MySQL ODBC कनेक्शन को बंद/पूलिंग करना