mysql - My SQL requires a user has logged in successfully once before, how can I modify to remove that requirement? -
यह मेरा एसक्यूएल है
'SELECT u.`id`, u.`mail `, _। 'पासवर्ड', यू.प्रथम_नाम`, यू.'लास्ट_नाम`, यू। फोरे_आईडी`, मैक्स (उल। डेटटाइम)` अंतिम_लागिन` के रूप में, एसएम (उल। 'फेल```) `उपयोगकर्ता से` `` `` `` `` `` `` `` `` `` `` `` `` `` `` `` `` `` `` `` `` `` `` `` `` `` `` `` `` `` `` `` `` `` ` `आईडी` = उल। यूज़र_आईडी``) जहां यू .. 'मेल' = '। डेटाबेस :: उदाहरण () - & gt; एस्केप ($ ईमेल) 'और यू।' फोले_आईडी` & gt; इकट्ठा की गई जानकारी का उपयोग करके, मैं यह तय कर सकता हूं कि उपयोगकर्ता को प्रवेश करना है, उन्हें गलत पासवर्ड के रूप में लात करना है, या उनके पास लॉक करना है या नहीं। कई बार गलत तरीके से लॉगिन करने का प्रयास किया। मैंने देखा कि जब मैं DROP , तालिका में से कोई भी काम नहीं करता, क्योंकि subquery 0 पंक्तियों को वापस कर देगा।
एसक्यूएल हमेशा मुझे हो जाता है मैं इस क्वेरी को कैसे बदल सकता हूं ताकि किसी उपयोगकर्ता के पहले कभी भी लॉग इन न हो, यह उन्हें अनुमति देगा?
बेशक मैं हर उपयोगकर्ता के लिए एक फर्जी पंक्ति दर्ज कर सकता हूं, लेकिन यह मेरे लिए बहुत हैक लगता है (और टूटने की संभावना)।
पढ़ने के लिए धन्यवाद
अपना JOIN एक LEFT JOIN में बदलें । एक जोन डिफ़ॉल्ट INNER JOIN के लिए है, जो एक रिकॉर्ड नहीं लौटाएगा जब तक कि कोई अन्य तालिका में मिलान नहीं किया जा सके "सही" तालिका में कोई मिलान रिकॉर्ड नहीं होने पर भी LEFT JOIN पर स्विच करने के लिए MySQL को "बाएं" तालिका से रिकॉर्ड वापस करने के लिए कहता है (अर्थात आपका उपयोगकर्ता तालिका) (आपका < कोड> उपयोगकर्ता_लागिन तालिका)।
Comments
Post a Comment