به هنگام وارد کردن اطلاعات php در کد های جاوا اسکریپت به ارور میخ.رم به وجود اینکه همه جا دیدم همینطوری وارد میکنند
تصویر کد رو ضمیمه کردم
اینم خطایی که تو کنسول باهاش برخورد میکنم
Uncaught SyntaxError: Unexpected token '<'
به خاطر اینکه متغیر $previewData داخل شرط تعریف شده به خاطر همین تا زمانی شرط اجرا نشه اون متغیر ساخته نمیشه سر همین ما میایم ابتدا $previewData رو بیرون از شرط با null مقدار دهی میکنیم تا در دسترس باشه و اگه اون شرط اجرا شد مقدار جدید داخل $previewData قرار بگیره
$previewData = null;
if(isset($_GET['preview'])){
$previewData = $locationHandel->previewLocation($_GET['preview']);
}
حالا داخل خود L.marker باید بیاییم چک کنیم ببنیم اگه متغییر null نبود مقدار lat - lng , title رو قرار بده
L.marker([<?= is_null($previewData) ?: $previewData->lat ?>,<?= is_null($previewData) ?: $previewData?->lng ?>]).addTo(map).bindPopup("ّ<?= is_null($previewData) ?: $previewData?->title ?>").openPopup();
درود
سینتکس php داخل جاوااسکریپت نامعتره و شما همچین خطایی رو میگیرید، برای اینکه کار کنه باید داخل دابل کوتیشن بزارید ‘ ’
مثل
<script>var test = '<?php echo $variable; ?>';</script>
اقای صالحی با تک کوتیشن دابل با هرچی امتحان میکنم با این خطا موجه میشم خود کد گاها کار میکنه ولی جلوی کدهای دیگه jquery رو میگیره
داخل scriptتون میتونید برای مثال نمونه کد زیر رو بزارید
<?php if ($location) : ?>
L.marker([<?= $location->lat ?>, <?= $location->lng ?>]).addTo(map).bindPopup("ّ<?= $location->title ?>").openPopup();
<?php endif; ?>