2016-12-21 6 views
-2

私は世界のインタラクティブマップを作成しようとしています。(SVG)すべての 'd'コードを収集するには?

ユーザーには国が割り当てられます。

これを行うには、すべてのd=''コードをデータベースに挿入します。

現在、このようなコードのビット数十から成っている:

<path class="COUNTRYNAME" d="123.123.123"></path> 

理想的には、私はPHPを使用して、d=''コードを選択し、自分のデータベースにそれらを挿入することができるだろうプログラムをしたいと思います/好ましくはJS/SQL。

これは可能ですか?

が手動でデータベースにd=''をコピーして貼り付け:私が試してみました何

。それは動作しますが、信じられないほど時間がかかります。

+0

これらの 'd'コードを提供するソースファイルの詳細や例を提供してください。これは、私たちがあなたに提供するソリューションに大きな影響を与えます。この時点で私はあなたに擦り傷のデータをスクリーニングするように頼んでいないと確信していません:) –

答えて

0

JavascriptはDOMをナビゲートして要素からデータを取り出し、AJAXを使用してサーバーに送信することができます。

var paths = $('path[class="COUNTRYNAME"]'); 
$.each(paths, function(index, current){ 
    //loop through each found 
    var d = $(this).attr('d').val(); 
    var params = "d=" + d; 
    $.post("/script.php", params, function(response){ 
     //handle response here 
    }); 
}); 

elsesのWebサイトをクロールしようとしている場合は、ヘッドレスブラウザまたはカスタムWebクローラーをお勧めします。

+0

少しのコードを共有してもよろしいですか?ありがとうございました。 – Daniel

+0

@ダニエルこれはこのサイトの仕組みではありません。あなたの解決策を書いてください。あなたが困った時にそれについて質問をしてください。 –

+0

にいくつかのコードが追加されました。 P.S.未検証 – Illuminati

0

このように、私たちは完全なプログラムを提供することはできません。

jQueryを使用すると、DOM操作が簡単になります。その後、「D」属性を持つすべての項目を反復処理することができます

var data=[]; $("div[d]").each(function(){ data[]=$(this).attr("d") }

あなたは配列にそのデータを保存して、ストレージを処理するPHPスクリプトにその情報を投げることができます。これには$.ajax()を使用する必要があります。

関連する問題