【发布时间】:2017-06-19 10:46:53
【问题描述】:
我正在尝试在 Leaflet 中创建地图点,它使用 javaScript 来编写点,例如:
L.marker([39.0865039, -9.2636987], {icon: tree3}).addTo(map)
.bindPopup('<a class="speciallink">Olive Tree</a>')
.openPopup();
在 MySQL 中,我存储了坐标,然后我尝试编写以下代码:
<?php
$res=mysql_query("SELECT * FROM arv_especie");
$rowArv=mysql_fetch_array($res);
$idPointVarzea=mysql_query("SELECT * FROM map_point_varzea");
while ($row=mysql_fetch_array($idPointVarzea)) {
echo "L.marker([" . $row["coordHori"] . ", " . $row["coordVerti"] . "], {icon: tree" . $row["ARV_id"] . "}).addTo(map)
.bindPopup($('<a class='speciallink'>" . $rowArv["ARV_Especie"] . "</a>').click(function() {
document.getElementById('DivShow" . $row["ARV_id"] . "').click();
})[0])
.openPopup();";
}
?>
此代码插入到<script type="text/javascript">,而不是外部文件中。
我正在使用这个过程,以便在后台我可以 CRUD 地图点。
我已经搜索并发现 php 回显在 javaScript 中不起作用(或至少我接近它的方式)。
有没有更好的使用 PHP 编写 javaScript 代码的方法?
【问题讨论】:
-
为什么不使用 ajax 来调用您的
php文件。让 php 返回坐标,以便您可以在使用 ajax 的过程中处理它们...... -
我会试试的,谢谢你的时间
-
请停止使用已弃用的 mysql_* API。使用 mysqli_* 或 PDO。然后,您可以避免与此库相关的安全问题,并使用参数化查询来正确保护自己免受 SQL 注入攻击。尽管此处显示的查询不易受到攻击,但您编写的任何依赖变量来完成查询的内容都将很容易遭到黑客攻击。 mysql_ 在 PHP7 中也被完全删除了,所以当你升级到这个版本时,你的代码将完全停止工作。
-
我知道mysql_不如mysqli_,我在我的编程课程第二年,第一年都是C#和ASP.net,今年是PHP,我的老师教我们使用 mysqli_,但我不知道为什么我更喜欢 mysql_,但我认为你是对的,是时候升级了,如果在进行更改后一切正常,我会警告你,谢谢你的时间
标签: javascript php mysql leaflet leaflet.draw