89 lines
2.7 KiB
PHP
89 lines
2.7 KiB
PHP
<?php
|
|
require_once __DIR__ . '/../get_connect.php';
|
|
|
|
// اسم الملف النصي الذي سيتم حفظ البيانات فيه
|
|
$filename = "drivers_list.txt";
|
|
|
|
/*
|
|
المطلوب:
|
|
- جلب أرقام الهاتف من phone_verification غير الموجودة في driver
|
|
- فك تشفير الهاتف (والإيميل إن لزم)
|
|
- حفظ النتيجة في ملف نصي (رقم الهاتف والملاحظة)
|
|
*/
|
|
|
|
$sql = "
|
|
SELECT
|
|
pv.id,
|
|
pv.phone_number,
|
|
pv.email,
|
|
pv.token_code,
|
|
pv.created_at,
|
|
n.note
|
|
FROM
|
|
phone_verification pv
|
|
LEFT JOIN
|
|
driver d ON pv.phone_number = d.phone
|
|
LEFT JOIN
|
|
notesForDriverService n ON pv.phone_number = n.phone
|
|
WHERE
|
|
d.phone IS NULL
|
|
AND (n.note != 'delete' OR n.note IS NULL)
|
|
-- تمت إضافة هذا الشرط بناءً على طلبك (آخر 5 أيام)
|
|
-- AND pv.created_at >= DATE_SUB(NOW(), INTERVAL 5 DAY)
|
|
ORDER BY
|
|
pv.created_at DESC;
|
|
";
|
|
|
|
$stmt = $con->prepare($sql);
|
|
$stmt->execute();
|
|
|
|
if ($stmt->rowCount() > 0) {
|
|
$rows = $stmt->fetchAll(PDO::FETCH_ASSOC);
|
|
|
|
// فتح الملف للكتابة (Mode 'w' يقوم بإنشاء الملف أو مسح محتواه السابق والكتابة من جديد)
|
|
$fileHandle = fopen($filename, 'w');
|
|
|
|
// التحقق من أن الملف فُتح بنجاح
|
|
if ($fileHandle) {
|
|
|
|
foreach ($rows as $r) {
|
|
$phone = "";
|
|
$note = "No Note"; // القيمة الافتراضية إذا لم توجد ملاحظة
|
|
|
|
// 1. فك تشفير رقم الهاتف
|
|
if (isset($r['phone_number']) && $r['phone_number'] != null) {
|
|
$phone = $encryptionHelper->decryptData($r['phone_number']);
|
|
}
|
|
|
|
// 2. تجهيز نص الملاحظة
|
|
if (isset($r['note']) && $r['note'] != null) {
|
|
$note = $r['note'];
|
|
}
|
|
|
|
// 3. تنسيق السطر الذي سيتم حفظه
|
|
// الشكل: Phone: 0123456789 | Note: مهتم بالتسجيل
|
|
$line = "Phone: " . $phone . " | Note: " . $note . PHP_EOL;
|
|
|
|
// 4. الكتابة داخل الملف
|
|
fwrite($fileHandle, $line);
|
|
}
|
|
|
|
// إغلاق الملف بعد الانتهاء
|
|
fclose($fileHandle);
|
|
|
|
// طباعة رسالة نجاح مع رابط للملف (اختياري)
|
|
echo json_encode([
|
|
"status" => "success",
|
|
"message" => "File created successfully",
|
|
"file" => $filename,
|
|
"count" => count($rows)
|
|
]);
|
|
|
|
} else {
|
|
jsonError("Unable to open file for writing.");
|
|
}
|
|
|
|
} else {
|
|
jsonError("No phone numbers found in the last 5 days");
|
|
}
|
|
?>
|