2010-09-17 6 views
7

Arka plan: Web uygulamamız tarafından oluşturulan bazı verilere grafik oluşturmak için Google Haritaları’nı kullanıyoruz. Kullanıcı bir rapor oluşturur ve bu raporu e-postayla gönderir. Sorun, kullanıcı Microsoft Word'de raporu açtığında, bu program dinamik olarak oluşturulmuş görüntüler hakkında bazı garip davranışlar sergiler.Google Grafikleri Nasıl Sunucuya Kaydettirilir

PHP kullanarak, dinamik olarak oluşturulmuş grafiklerimizi sunucuya kaydetmek istiyoruz, çünkü Word basit bağlantılı görüntüleri herhangi bir sorun olmadan halledebilir.

Nasıl devam edeceğimin bir kaybı var. Fikirler?

+0

doğrudan e-postayla gönderebilirsiniz, bkz. Http://datamakessense.com/kpi-emails-with-google-charts-url-parameters – AdrianBR

cevap

8
<? 
$imageData = file_get_contents('http://chart.apis.google.com/chart... etc'); 

// Attach image data as attachment to an email 
//OR: 

file_put_contents('/path/to/save/image.png',$imageData); 
?> 
0

Sadece webfrontend'inizin oluşturduğu URL'yi kullanarak görüntüyü getirin, ardından raporları oluşturan kodu Google Grafik URL'leri yerine yerel olarak depolanmış görüntüleri içerecek şekilde ayarlayın.

Başka bir sorun mu var?

1

görüntüyü almak için curl kullanmak ve sunucuda kaydedebilirsiniz:

$ch = curl_init(); 

curl_setopt($ch, CURLOPT_URL, "http://url.to.chart/"); 
curl_setopt($ch, CURLOPT_HEADER, 0); 
curl_setopt($ch, CURLOPT_FILE, '/path/to/file'); 
curl_exec($ch); 
curl_close($ch); 
2

basit yolu Google'dan görüntüyü almak ve üzerinde bir dosyaya yazmak için curl gibi bir şey kullanmak muhtemelen senin sunucusu. allow_url_fopen seçeneğini açarsanız, fopen ve ilgili işlevleri de kullanabilirsiniz.