データベースから情報を取得し、マップ上のマーカーに解釈されるxmlを出力するGoogleマップを作成しています。クリックした要素IDをPHPに渡して、データベースの結果をフィルタリングしたいと思います。関数を実行すると、 「未定義のプロパティ' _e3 'を読み取れません」というエラーが表示されます。変数を削除してコードに型を直接入力すると、すべて正常に機能します。
関連するjQuery
$(document).ready(function() {
$('.map_item').toggle(
function() {
var itemid = this.id;
$.ajax({
type: 'POST',
//php script takes info from database, outputs xml
url:'SQL.php',
//pass var to the php to select only items matching this id
data: 'variable1=' + itemid,
success: function(data) {
ファイルSQL.phpからの関連するPHP
$ajax_var = $_POST['variable1'];
$query = 'SELECT * FROM location WHERE Type="' . $ajax_var . '"';
$result = mysql_query($query); //sqlsrv_query
header('Content-type: text/xml');
// Iterate through the rows, adding XML nodes for each
while ($row = @mysql_fetch_assoc($result)){
// ADD TO XML DOCUMENT NODE
$node = $dom->createElement('marker');
$newnode = $parnode->appendChild($node);
$newnode->setAttribute("dirtType",$row['dirtType']);
$newnode->setAttribute("lat", $row['lat']);
$newnode->setAttribute("lng", $row['lng']);
}
echo $dom->saveXML();