繁体   English   中英

将php数组传递给javascript

[英]Passing php array to javascript

我使用JavaScript(v3 api)创建了Google Map。 我已经在其上弹出了几个标记,只是为了表明它可以完成。 我在一个特定于每个标记的文本框中添加了一些文本,只是为了查看是否可以完成。 标记和文本框都很难看,但这对于不同的日子来说是一个问题。 地图占据屏幕宽度的75%和屏幕高度的100%。 我有一个用户帖子的mySQL数据库。 数据包括帖子#id,类别,IP地址,经度值,纬度值,城市,用户名,标题和帖子内容。 我已经“浮动”了一个包含帖子类别并在地图旁边标题的表,使用PHP查询数据库,将数据库行推送到数组中并使用它作为表的源。 这占用了显示宽度的剩余部分。

很好,到目前为止。

我想为每个帖子添加一个标记,以便标记位于发布帖子的经度和纬度。 我想将内容添加到特定于该帖子的标记文本框(例如,城市,用户名,帖子标题,帖子内容)。 此外,我希望能够将显示的表格中的帖子链接到地图标记,以便例如表格中特定帖子上的鼠标悬停事件可能导致与该标记相关联的文本框变得可见。

但我似乎无法找到将PHP数组传递给Google Map JavaScript的方法,以便我可以根据需要使用它来添加标记。 我还没有找到一种方法将鼠标悬挂在Google地图外部的对象上的事件与Google地图标记相关联。

我做了大量的研究,并发现了对前者的类似请求 - 将PHP数组传递给JavaScript。 建议的解决方案通常是使用某种分隔符(例如逗号)从PHP数组创建一个字符串,并将其传递给JavaScript,然后将其重新转换为数组。 我不相信这会对我的情况有用。

我当前的代码驻留在一个文件中。 样式内容位于html head部分的样式部分中,稍后可以移动到单独的css文件中。 Google地图JavaScript位于脚本部分,同样位于html头部,可以移动到单独的js文件中。 正文包含一些html - 用于map-canvas的div和用PHP的表来获取单个PHP数组中的数据库行并为表创建html。

我知道'PHP是服务器端技术,而JavaScript是客户端',正如已多次指出的那样。 但肯定必须有一些方法可以将PHP获得的数据数据从SQL数据库(而不是数据来源特别相关)传递给JavaScript代码?

我为这么冗长而道歉,如果我的问题得到了解答,我已经错过了,或者误解了。 或者如果我特别愚蠢。

照顾自己。

麦克风

通过编辑原始帖子添加此内容。

好。 我可能已经找到了第二个问题的答案:如何创建从外部元素到Google地图标记的链接。 http://econym.org.uk/gmap/mouseover.htm总是那样,放弃寻找找到物品的东西。

麦克风

使用json_encode将PHP数组转换为JSON。

现在您有了一个可以使用的JavaScript对象。

$jsonString = json_encode($phpArray);

在javascript中: -

var jsonStr  = <?=$jsonString?>;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM