2013-02-14 52 views
0

我有以下的SVG例子图:使用PHP动态填充SVG文件?

http://jovansfreelance.com/bikestats/circos/travels.svg

你可以从那里看到源代码,这是所有客户端。

该图表使用示例数据。现在,我需要做的是从数据库(或者我可以使用PHP生成的服务器上的文件)动态填充数据。

将PHP代码直接放入SVG文件不起作用。使用onLoad AJAX调用不起作用。它不会让我包含jQuery。那么我该怎么做呢?我知道有一种方法,但我对SVG文件完全陌生。

回答

1

从PHP生成SVG和从PHP生成HTML之间没有真正的区别。您只需要覆盖默认的内容类型标题(header('Content-Type: application/svg+xml');)。

当然,您仍然需要.php文件扩展名,因为您的服务器不会(默认情况下)设置为解析.svg PHP代码文件。

+0

那么,标题应该是什么?实际上,如果我将格式更改为'.php',则会出现以下错误:'解析错误:语法错误,第1行中的/home/frufru/public_html/bikestats/circos/travels.php出现意外的T_STRING' – jovan 2013-02-14 12:12:14

+0

,有没有办法告诉服务器解析这个SVG文件中的PHP代码?使用htaccess什么的? – jovan 2013-02-14 12:13:40

+0

设置标题的代码在答案中。您需要禁用PHP安装中的短标签或从PHP中“echo”您的XML声明。是的,Google会告诉你如何配置Apache以在具有不同文件扩展名的文件中运行PHP。 – Quentin 2013-02-14 12:14:52