0

我正在开发一个应用程序并使用谷歌图表,所以我可以添加统计信息,到目前为止的问题是我想从我的数据库中检索数据并将其放入 javascript 函数中!我只是不知道如何混合两种不同的语言,我正在使用 php 进行编码。

4

2 回答 2

0

您需要从 php 中的 postgres 获取所有数据,然后再将其提供给您的 html 模板。

1) http://php.net/manual/en/ref.pgsql.php

2) 任何模板引擎或您自己的带有变量的纯 html 文件。例如:http ://twig.sensiolabs.org/

于 2013-08-30T10:30:46.393 回答
0
<?php
    $data = array(
        array('Year', 'Sales', 'Expenses'),
        array(...whatever data you extracted from the db...)
    );
?>
<script type="text/javascript">
    var data = google.visualization.arrayToDataTable(
        <?php echo json_encode($data, JSON_HEX_TAG|JSON_HEX_AMP|JSON_HEX_QUOT); ?>
    );
</script>

注意 JSON_HEX_TAG 是确保编码字符串中没有</script>结束标记所必需的,如果使用 XHTML,则 JSON_HEX_AMP 是必需的。不应使用 JSON_UNESCAPED_UNICODE,因为它允许在 JSON 中有效但在 JavaScript 中无效的 U+2028 和 U+2029 字符。

如果您想避免内联 JavaScript 元素并将 JSON 误认为是 JavaScript,另一种方法是通过 DOM 传递数据:

<div id="something" data-data="<?php echo htmlspecialchars(json_encode($data)); ?>">

...

var json = document.getElementById('something').getAttribute('data-data');
var data = google.visualization.arrayToDataTable(JSON.parse(json));
于 2013-08-30T10:47:14.397 回答