2013-02-14 53 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