سلام. وقت بخیر
برای دریافت و نمایش همه لوکیشنها روی نقشه چه کاری باید انجام بدیم؟
خیلی داکیومنت Leaflet و سورس کد پروژه رو خوندم ولی متاسفانه هیچ راه حلی برای حل این چالش به ذهنم نرسید.
ممنون میشم اگه یه راهنمایی برای حل این تمرین کنید.
سلام آرمین عزیز
متوجه منظورت نمیشم
اگر میخوای مکان هایی مثل رستوران و ..... روی نقشه نمایش داده بشن از پلاگین زیر میتونی استفاده کنی:
https://github.com/mapbox/leaflet-knn
اگر هم میخوای مکانهای توی دیتابیس همگی نمایش داده بشن از یک حلقه استفاده کن.
سلام مجدد
بله میخوام لوکیشن هایی که ادمین اونا رو توی پنل تایید کرده توی نقشه نمایش داده بشن. برای همین یه متد نوشتم که فقط لوکیشنهای تایید شده رو میگیره:
function getVerifiedLocations(): bool|array { global $pdo; $sql = "SELECT * FROM locations WHERE is_verified = :is_verified"; $stmt = $pdo->prepare($sql); $stmt->execute([ ':is_verified' => 1 ]); return $stmt->fetchAll(PDO::FETCH_OBJ); }
و توی فایل index.php این متد رو call میکنم:
$verifiedLocations = getVerifiedLocations();
و در فایل tpl-index هم داخل تگ script به این صورت حلقه زدم:
foreach ($verifiedLocations as $location): ?> L.marker([= $location->lat ?>, = $location->lng ?>]).addTo(MAP).bindPopup("= $location->title ?>").openPopup(); endforeach; ?>
این روش خوبه یا روش بهتری هم وجود داره؟
سولوشن خوب و بهینه ای هست و هیچ مشکلی نداره.