डेटाबेस के माध्यम से PHP में सरल प्रमाणीकरण
आइए डेटाबेस पर आधारित सबसे सरल प्रमाणीकरण लागू करें, अभी के लिए पंजीकरण के बिना। उपयोगकर्ताओं के पंजीकरण के बजाय, हम बस डेटाबेस की एक तालिका में उनके लॉगिन और पासवर्ड डालेंगे:
| id | login | password |
|---|---|---|
| 1 | user | 12345 |
| 2 | admin | 123 |
अब एक फॉर्म बनाते हैं, जिसमें लॉगिन और पासवर्ड डाले जाएंगे:
<form action="" method="POST">
<input name="login">
<input name="password" type="password">
<input type="submit">
</form>
अब वह कोड लिखते हैं, जो जांच करेगा कि क्या फॉर्म सबमिट किया गया है और, यदि सबमिट किया गया है, तो यह जांच करेगा कि क्या डेटाबेस में ऐसा उपयोगकर्ता मौजूद है जिसका लॉगिन और पासवर्ड मेल खाता हो:
<?php
if (!empty($_POST['password']) and !empty($_POST['login'])) {
$login = $_POST['login'];
$password = $_POST['password'];
$query = "SELECT * FROM users WHERE login='$login' AND password='$password'";
$res = mysqli_query($link, $query);
$user = mysqli_fetch_assoc($res);
if (!empty($user)) {
// यूजर प्रमाणित हो गया
} else {
// गलत लॉगिन या पासवर्ड
}
}
?>
ऊपर वर्णित प्रमाणीकरण लागू करें। ऐसा करें कि, यदि उपयोगकर्ता प्रमाणीकरण पास कर गया है - तो इस बारे में एक संदेश प्रदर्शित हो, और यदि नहीं पास किया - तो यह संदेश कि दर्ज किया गया लॉगिन या पासवर्ड गलत है।
कोड को इस तरह संशोधित करें कि सफल प्रमाणीकरण की स्थिति में पासवर्ड और लॉगिन दर्ज करने का फॉर्म स्क्रीन पर न दिखाई दे।
कोड को इस तरह संशोधित करें कि सफल प्रमाणीकरण की
स्थिति में index.php पेज पर रीडायरेक्ट हो।
कोड को इस तरह संशोधित करें कि index.php पेज पर
सफल प्रमाणीकरण का संदेश प्रदर्शित हो। सत्रों पर
फ्लैश संदेशों के माध्यम से इस कार्य को हल करें।