encryptData(filterRequest("passengerEmail")); $passengerId = filterRequest("passengerId"); $passengerphone = $encryptionHelper->encryptData(filterRequest("passengerphone")); $sql = "SELECT `passengers`.`id`, `passengers`.`phone`, `passengers`.`email`, `passengers`.`gender`, `passengers`.`status`, `passengers`.`birthdate`, `passengers`.`site`, `passengers`.`first_name`, `passengers`.`last_name`, `passengers`.`sosPhone`, `passengers`.`education`, `passengers`.`employmentType`, `passengers`.`maritalStatus`, `passengers`.`created_at`, `passengers`.`updated_at`, ( SELECT COUNT(`id`) FROM `passengers` ) AS countPassenger, ( SELECT COUNT(`id`) FROM `feedBack` ) AS countFeedback, ( SELECT CAST(AVG(`rating`) AS DECIMAL(10, 2)) FROM `ratingPassenger` WHERE `passenger_id` = `passengers`.`id` ) AS ratingPassenger, ( SELECT COUNT(`driverID`) FROM `ratingPassenger` WHERE `passenger_id` = `passengers`.`id` ) AS countDriverRate, ( SELECT COUNT(`passengerID`) FROM `canecl` WHERE `passengerID` = `passengers`.`id` ) AS countPassengerCancel, ( SELECT CAST(AVG(`rating`) AS DECIMAL(10, 2)) FROM `ratingDriver` WHERE `passenger_iD` = `passengers`.`id` ) AS passengerAverageRating, ( SELECT COUNT(`driver_id`) FROM `ratingDriver` WHERE `passenger_id` = `passengers`.`id` ) AS countPassengerRate, ( SELECT COUNT(`passenger_id`) FROM `ride` WHERE `passenger_id` = `passengers`.`id` ) AS countPassengerRide, ( SELECT `token` FROM `tokens` WHERE `passengerID` = `passengers`.`id` ) AS passengerToken FROM `passengers` WHERE passengers.email = :email OR passengers.phone = :phone OR passengers.id = :id "; $stmt = $con->prepare($sql); $stmt->bindParam(":email", $passengerEmail); $stmt->bindParam(":phone", $passengerphone); $stmt->bindParam(":id", $passengerId); $stmt->execute(); $result = $stmt->fetchAll(PDO::FETCH_ASSOC); // فك التشفير للحقول الحساسة foreach ($result as &$row) { $fieldsToDecrypt = [ "phone", "email", "gender", "birthdate", "site", "first_name", "last_name", "sosPhone", "education", "employmentType", "maritalStatus" ]; foreach ($fieldsToDecrypt as $field) { if (isset($row[$field])) { $row[$field] = $encryptionHelper->decryptData($row[$field]); } } } if ($stmt->rowCount() > 0) { jsonSuccess($data = $result); } else { jsonError("No records found"); } ?>