encryptData($v); } error_log("[GIFT_CHECK] Received Phone: " . $phone); error_log("[GIFT_CHECK] Variants: " . implode(', ', $phoneVariants)); // بناء استعلام يبحث عن كل الاحتمالات (المشفرة وغير المشفرة) $placeholders = []; $params = []; foreach ($encVariants as $i => $ev) { $placeholders[] = "phone = :enc$i"; $params[":enc$i"] = $ev; } foreach ($phoneVariants as $i => $pv) { $placeholders[] = "phone = :raw$i"; $params[":raw$i"] = $pv; } $sql = "SELECT * FROM `driver` WHERE " . implode(" OR ", $placeholders); $stmt = $con->prepare($sql); foreach ($params as $key => $val) { $stmt->bindValue($key, $val); } $stmt->execute(); if ($stmt->rowCount() > 0) { $rows = $stmt->fetchAll(PDO::FETCH_ASSOC); // Decrypt sensitive fields foreach ($rows as &$row) { if (!empty($row['phone'])) { $row['phone'] = $encryptionHelper->decryptData($row['phone']); } if (!empty($row['name_arabic'])) { $row['name_arabic'] = $encryptionHelper->decryptData($row['name_arabic']); } } jsonSuccess($rows); } else { jsonError("No recent driver location activity found"); } ?>