0

データベースから情報を取得し、マップ上のマーカーに解釈される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();
4

1 に答える 1

0

データは次のように別の方法で送信する必要があります。

data: {
   "variable1": itemId
}
于 2012-10-17T21:18:36.653 に答える