2015-10-17 48 views
0

我知道,我知道,一个是客户端,一个是服务器端。我不得不使用PHP来获取一些数据数组,并将这些数据传递给Google Charts geomaps。例如:将一个javascript变量传递给PHP以与谷歌图表一起使用

echo 'var data = google.visualization.arrayToDataTable([ 
       ["Country", "Popularity"], 
     '; 
     foreach($countries as $key=>$val){ 
      echo '["'.$key.'",'.$val.'],'; 
     } 
echo ']); 

当用户点击地图上它把这个值放入一个变量的国家(使用事件侦听器)之一:

var country = data.getValue(selectedItem.row, 0); 

现在我需要这个传递给PHP数组,因此我可以这样做:

if($country == country){ 
//do whatever 
} 
+0

你需要有''使用JavaScript时的标签,但我怀疑这会解决它。 – Script47

+3

使用ajax调用来发送数据到php文件,如果你想要,你也可以返回一些数据 – WisdmLabs

+1

首先:你需要学习区分运行在浏览器中的JS和运行在你的web服务器上的PHP。然后你会看到,在“$ country == country”这样的源代码中,没有办法“将一个变量从JS传递给PHP”。相反,让自己熟悉AJAX和JSON。谷歌这些条款,并找到适合你的介绍。 –

回答

1

要发送Javascript值到PHP,您需要使用AJAX。使用jQuery,它会是这个样子(最基本的例子可能):

var country = data.getValue(selectedItem.row, 0); 
$.post('file.php', {country: country}); 
+0

这似乎是一个好主意,但我无法完成它的工作。当我将国家/地区发送并保存到$ _SESSION时,只能在刷新页面时回收。我无法真正使用函数(数据),因为它是一个JS变量...... – Hook

相关问题