我有这个:
<script type="text/javascript">
var dataset = [ 5, 10, 15, 20, 25 ];
d3.select("body").selectAll("p")
.data(dataset)
.enter()
.append("p")
.text("New paragraph!");
</script>
它有效。然后我一直在学习MySQL/PHP,并且在一个小数据库中有一些数据。
<?php
if ( $results ) {
foreach($results as $row) {
echo $row->eventName . "<br>";
}
} else {
echo 'No rows found.';
}
?>
这与它的其余部分一起工作,并显示一些随机的事件名称,如电影、购物、工作。
我找到了这个关于如何将PHP变量引入Javascript的教程,但我无法理解。为了简化而不是计算数组,我甚至改为只计算数据本身,但甚至无法获得数据。这就是我最后的尝试:
<?php
$php_var = 1;
?>
<script type="text/javascript">
var dataset = <?php echo $php_var; ?>
d3.select("body").selectAll("p")
.data(dataset)
.enter()
.append("p")
.text("New paragraph!");
</script>
然后我想也许阵列可以工作,所以尝试了这个
<?php
$php_var = array(
5, 10, 15, 20, 25);
?>
<script type="text/javascript">
var dataset = $php_var
d3.select("body").selectAll("p")
.data(dataset)
.enter()
.append("p")
.text("New paragraph!");
</script>
但也没有运气。有人能给我一些建议吗?或者给我一个关于如何将数据从PHP转换为Javascript的教程?
尝试使用PHP的json_encode
函数,然后嵌入数据:
<?php
$dataset = array(5, 10, 15, 20, 25);
?>
<script>
var dataset = <?php echo json_encode($dataset); ?>;
// ...
</script>
我意识到这对聚会来说有点晚了,但你不能在.html文件中包含php并成功解析它,除非你的服务器设置为这样做。
您需要在.htaccess:中添加以下片段之一
RemoveHandler .html .htm
AddType application/x-httpd-php .php .htm .html
或
<FilesMatch "'.html$">
ForceType application/x-httpd-php
</FilesMatch>