我一直在尝试使用此指南来解决使用api实现谷歌地图的一些问题://code.google.com/intl/no-NO/apis/maps/articles/phpsqlajax_v3.html。
我坚持这一部分:使用另一个文档中的变量集修改查询,或者在处理服务器基本名称的同一文档中修改查询,如下所示:
*(这是生成xml文件的php文件:http://gmaps-samples-v3.googlecode.com/svn/trunk/articles/phpsqlajax/phpsqlajax_genxml3.php)*
$mapid = str_replace(".php","",basename($_SERVER['REQUEST_URI']));
$query = "SELECT * FROM markers WHERE type='".$mapid."'";
这不起作用......
如果我在显示地图eighter的主webpage.php文件中设置变量,它也不起作用......如果我在同一个文件中设置变量(xmlgenerate.php),它就可以了:
$mapid = "mymap";
$query = "SELECT * FROM markers WHERE type='".$mapid."'";
希望有人能告诉我这里做错了什么。
编辑:以下是btw实时文件的链接。 xmlgenerate => http://www.pinnedmap.com/mapdata.php和mappage => http://www.pinnedmap.com/test.php注意。一个有效的查询示例是:wondersoftheworld
从test.php传递变量将是理想的。
答案 0 :(得分:0)
我不明白你在这里要做什么:
$mapid = str_replace(".php","",basename($_SERVER['REQUEST_URI']));
而是试试这个:
$mapid = mysql_real_escape_string($_GET['mapid']);
(mysql_real_escape_string
部分阻止SQL注入)
现在只需要像file.php?mapid=something
那样请求你的文件,一切都应该有用......