我使用 JavaScript (v3 api) 创建了一个 Google map 。我在上面做了几个标记,只是为了表明它可以完成。我在每个标记特定的文本框中添加了一些文本,只是为了看看是否可以完成。标记和文本框都很丑陋,但这是另一天的问题。 map 占据大约 75% 的屏幕宽度和 100% 的屏幕高度。 我有一个用户帖子的 mySQL 数据库。数据包括帖子#id、类别、ip地址、经度值、纬度值、城市、用户名、标题和帖子内容。 我已经“ float ”了一个包含帖子类别并在 map 旁边向上移动的表,使用 PHP 查询数据库,将数据库行插入数组并将其用作表的源。这占据了显示宽度的剩余部分。
很好,到目前为止。
我想为每个帖子添加一个标记,以便标记位于帖子起源的经度和纬度。我想将内容添加到特定于该帖子的标记文本框(例如城市、用户名、帖子标题、帖子内容)。 此外,我希望能够将显示的表格中的帖子链接到 map 标记,这样,例如,表格中特定帖子上的鼠标悬停事件可能会导致与该标记关联的文本框变得可见。
但我似乎无法找到一种方法将 PHP 数组传递给 Google Map JavaScript,以便我可以使用它来根据需要添加标记。 我也未能找到一种方法将 Google map 外部对象上的鼠标悬停事件与 Google map 标记相关联。
我进行了广泛的研究并发现了对前者的类似请求——将 PHP 数组传递给 JavaScript。建议的解决方案通常是使用某种分隔符从 PHP 数组创建一个字符串,例如一个逗号,并将其传递给 JavaScript,在 JavaScript 中它被重新转换为一个数组。我不认为这对我有用。
我当前的代码位于一个文件中。样式内容位于 html head 部分的样式部分中,稍后可以移动到单独的 css 文件中。 Google map JavaScript 位于脚本部分,同样位于 html 头部,并且可以移动到单独的 js 文件中。正文仅包含一点 html - 用于 map Canvas 的 div 和带有 PHP 的表格 获取单个 PHP 数组中的数据库行并为表创建 html。
我知道“PHP 是服务器端技术,而 JavaScript 是客户端”,这已被多次指出。 但是肯定有某种方法可以将 PHP 从 SQL 数据库(并不是说数据源特别相关)获取的数据数组传递给 JavaScript 代码吗?
对于如此冗长,我深表歉意,如果我的问题在我遗漏或误解的地方得到了回答。或者如果我特别愚蠢。
保重。
迈克
通过编辑原始帖子添加它。
好的。我可能已经找到了第二个问题的答案:如何创建从外部元素到 Google map 标记的链接。 http://econym.org.uk/gmap/mouseover.htm总是这样,在放弃寻找某物之后找到了某物。
迈克
最佳答案
使用 json_encode
将您的 PHP 数组转换为 JSON .
现在您有了一个可以使用的 JavaScript 对象。
关于php - 将 php 数组传递给 javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15766221/