आप ऐसा करने का प्रयास कर सकते हैं:
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 के साथ तैयार किए गए स्टेटमेंट