• 0

التحقق من MD5 في حالة التطابق ام لا php

قمت بعمل صفحة php من خلالها ارغب بتحقق فقط من وجود هذا الباسورد في قاعدة البيانات ام لا 

ولكن لا اعلم ما هو الخطاء بتحديد ولكن حتى لو كان الرقم صحيح الان يرجى الى بيانات انه خطاء

<?php
include 'con.php';
 
 $json = file_get_contents('php://input');
 $_POST = json_decode($json,true);
 $pass =  '02cb962ac59075b964b07152d234b70';



$sql = "SELECT * FROM user WHERE pass=?"; // SQL with parameters
$stmt = $con->prepare($sql); 
$stmt->bind_param("s", $pass);
$stmt->execute();
$result = $stmt->get_result(); // get the mysqli result
$user = $result->fetch_assoc(); // fetch data   

if($user){
      $pass= '02cb962ac59075b964b07152d234b70';

 if (password_verify($pass, $user["pass"])) {
   
     $check['result'] = 'Login Matched';
     $SuccessMSG = json_encode($check);
     echo $SuccessMSG ; 
} else {
   $InvalidMSG= array("result"=>"Invalid Username or Pasfffffsword Please Try Again");
        $InvalidMSGJSon = json_encode($InvalidMSG);
         echo $InvalidMSGJSon ;
  }

}else{
     $InvalidMSG= array("result"=>"Invalid Username or Password Please Try Again");
        $InvalidMSGJSon = json_encode($InvalidMSG);
         echo $InvalidMSGJSon ;

}

 mysqli_close($con);
 

 
 
?>

 

هذا الكود المستعمل والرقم السري الان 123 قمت بمحاولات مختلفه لمعرفة المشكله

ياليت اذا احد يعرف سبب المشكله او الخطاء في الكود يفيدنا 

المتفرض احصل على نتيجة :

  $check['result'] = 'Login Matched';

 

1 شخص أعجب بهذا

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
شارك على الشبكات الإجتماعية
  • 1

سوف تقوم بإرجاع قيمة حقل كلمة المرور وهي مشفرة و من ثم تدخل كلمة المرور وهي مثلا 123 إلى دالة md5 بهذا الشكل 

md5(123)

ثم يمكنك عمل شرط للتحقق من أن كلمة المرور المحفوظة في قاعدة البيانات تساوي كلمة المرور المدخلة بهذا الشكل 

if(md5(123) == $row['password']){
	//....
}

ملاحظ الكود توضيح.

لن تستعمل password_verify في عملية التحقق

1 شخص أعجب بهذا

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
شارك على الشبكات الإجتماعية
  • 1
بتاريخ 12 دقائق مضت قال مروان مروان3:

اهلا بك اخي الكريم

فعلا نجح الامر يعني المشكله كلها كانت في md5 

ما هو الفرق لو تكرمت الذي حدث بين password_verify و md5 ؟

عندما نستخدم md5 في التشفير يجب أن نقوم بأستخدام نفس الدالة md5 لنقوم بالمقارنة , أما إذا قمنا باستخدام password_hash في التشفير فإننا نستخدم password_verify في المقارنة.

1 شخص أعجب بهذا

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
شارك على الشبكات الإجتماعية
  • 0
بتاريخ 6 دقائق مضت قال بلال زيادة:

سوف تقوم بإرجاع قيمة حقل كلمة المرور وهي مشفرة و من ثم تدخل كلمة المرور وهي مثلا 123 إلى دالة md5 بهذا الشكل 


md5(123)

ثم يمكنك عمل شرط للتحقق من أن كلمة المرور المحفوظة في قاعدة البيانات تساوي كلمة المرور المدخلة بهذا الشكل 


if(md5(123) == $row['password']){
	//....
}

ملاحظ الكود توضيح.

لن تستعمل password_verify في عملية التحقق

اهلا بك اخي الكريم

فعلا نجح الامر يعني المشكله كلها كانت في md5 

ما هو الفرق لو تكرمت الذي حدث بين password_verify و md5 ؟

1 شخص أعجب بهذا

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
شارك على الشبكات الإجتماعية

يجب أن تكون عضوًا لدينا لتتمكّن من التعليق

انشاء حساب جديد

يستغرق التسجيل بضع ثوان فقط


سجّل حسابًا جديدًا

تسجيل الدخول

تملك حسابا مسجّلا بالفعل؟


سجّل دخولك الآن