कोई डेटाबेस में नमकीन पासवर्ड हैश की खोज नहीं कर सकता है। हैश की गणना करने के लिए आपको पासवर्ड_हैश () फ़ंक्शन की आवश्यकता होती है जैसा कि आपने पहले ही अपने इंसर्ट स्टेटमेंट में सही ढंग से किया था।
// Hash a new password for storing in the database.
// The function automatically generates a cryptographically safe salt.
$hashToStoreInDb = password_hash($password, PASSWORD_DEFAULT);
पासवर्ड जांचने के लिए, आपको पहले केवल उपयोगकर्ता नाम से खोजना होगा (एसक्यूएल इंजेक्शन से बचने के लिए तैयार क्वेरी का इस्तेमाल किया):
$sql = 'select * from admin where username = ?';
$db->prepare($sql);
$db->bind_param('s', $first);
जब आप अंततः डेटाबेस से संग्रहीत हैश प्राप्त कर लेते हैं, तो इसे इस तरह से जांचा जा सकता है:
// Check if the hash of the entered login password, matches the stored hash.
// The salt and the cost factor will be extracted from $existingHashFromDb.
$isPasswordCorrect = password_verify($password, $existingHashFromDb);