prepare("SELECT `id` FROM `users` WHERE `phone` = :phone AND `full_name` = :full_name AND `city` = :city AND `identity_num` = :identity_num AND `status` = 'active' LIMIT 1"); $stmt->execute([ ':phone' => $phone, ':full_name' => $full_name, ':city' => $city, ':identity_num' => $identity_num ]); $user = $stmt->fetch(); if ($user) { $show_reset_fields = true; $verified_user_id = (int)$user['id']; } else { $error_message = 'البيانات المدخلة غير متطابقة مع أي حساب نشط بالنظام.'; } } catch (PDOException $e) { $error_message = 'حدث خطأ في النظام، يرجى المحاولة لاحقاً.'; } } else { $error_message = 'يرجى تعبئة جميع الحقول المطلوبة للمطابقة.'; } } // المرحلة الثانية: تحديث كلمة المرور الجديدة مباشرة بعد النجاح if (isset($_POST['action']) && $_POST['action'] === 'update_password') { $user_id = (int)($_POST['user_id'] ?? 0); $new_pass = $_POST['new_password'] ?? ''; $confirm_pass = $_POST['confirm_password'] ?? ''; if ($user_id > 0 && !empty($new_pass) && !empty($confirm_pass)) { if ($new_pass === $confirm_pass) { try { // تشفير كلمة المرور الجديدة أمنياً بـ BCRYPT المتوافق مع PHP 8.4 $new_hash = password_hash($new_pass, PASSWORD_BCRYPT); $stmt_update = $pdo->prepare("UPDATE `users` SET `password_hash` = :new_hash WHERE `id` = :id"); $stmt_update->execute([ ':new_hash' => $new_hash, ':id' => $user_id ]); $success_message = 'تمت إعادة تعيين كلمة المرور بنجاح. يمكنك الآن تسجيل الدخول.'; } catch (PDOException $e) { $error_message = 'فشل تحديث كلمة المرور، يرجى المحاولة لاحقاً.'; } } else { $show_reset_fields = true; // إبقاء الخانات مفتوحة في حال تضارب كلمات المرور $verified_user_id = $user_id; $error_message = 'كلمات المرور الجديدة غير متطابقة.'; } } else { $error_message = 'حدث خطأ في معالجة طلبك، يرجى إعادة المحاولة.'; } } } ?>
يرجى إدخال بيانات حسابك المسجلة لمطابقتها مع خوادم الأمان لفتح الحساب الفوري.