2

PHP&MySQLを使用していますが、ロケーション名のデータはデータベースから取得されます。場所はGoogleマップにプロットする必要があります。ループ内に次のコードがあります。

$accum_str .=  "$('#map_addresses').gMap('addMarker', {";
    $accum_str .=  "latitude: {$location['Location']['latitude']},";
    $accum_str .=  "longitude: {$location['Location']['longitude']},";
    $accum_str .=  "content: '" . htmlspecialchars($location['Location']['name']) . "',";
    $accum_str .=  "icon: {";
        $accum_str .=  "image: \"http://myappdomain.com/img/pin.png\",";
        $accum_str .=  "iconsize: [26, 46],";
        $accum_str .=  "iconanchor: [12, 46]";
    $accum_str .=  "},";
    $accum_str .=  "popup: false";
$accum_str .=  "});";

ここで、すべての場所の名前が通常の文字である場合、たとえば次のようになります。

Bambie store

Googleマップをレンダリングします。しかし、キャラクターがベトナム語またはタイ語の場合:

Thích Quảng Đức Phú Nhu

また

กรุงเทพมหานคร Bangkok

...グーグルマップには何も表示されませんでした。

私のHTMLでは、次のものを使用します。

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

なぜ、どのようにこれが機能するのか、何かアイデアはありますか?助けてくれてありがとう!!!

4

1 に答える 1

0

GoogleマップAPIで遊んでからしばらく経ちましたが、テキストが画像にハードコードされていないため、マップ出力はhtmlです。jQuery を使用して、読み込み後に英語名をタイ語に置き換えることができます。データベースに英語のエイリアスがない場合は、タイ語をロードするためにおそらく 2 番目の db ajax 呼び出しが必要です。カスタム マッピングを場所の小さなリストに限定する場合は、最初のページロードで .js 場所名辞書ファイルを作成して、反復的な翻訳 ajax 呼び出しをカットすることもできます。

于 2012-09-07T10:01:48.493 に答える