Fungsi js diperlukan. Setiap kali catatan keluar, ip diganti dengan kota. Friday menulis sedikit informasi rahasia! Hanya ada alamat ip di database, dan rata-rata pengunjung tidak tahu kota mana Alamat IP berasal. Jika di tabel ada satu kolom lagi untuk menyimpan kota, tetapi tidak ada keasliannya sama sekali. Akan lebih bagus jika alamat IP tersebut bisa diubah menjadi kota dan mendownload databasenya. Tapi rasanya agak boros untuk kebutuhan ini. Untungnya banyak website yang menyediakan query. Jika saya bisa mengubah hasilnya menjadi .masalah saya terpecahkan.
Fungsi js diperlukan setiap kali record keluar, ganti ip dengan kota:
Copy kode kodenya sebagai berikut:
<tipe skrip=teks/javascript>
fungsi queryAddress(strID){
mencoba{
var qIp=dokumen.getElementById(ip_+strID);
var qUrl='http://ip.wanvee.cn/GetIp.ashx?ipstr='+qIp.firstChild.nodeValue;
var ajax=Ajax baru.Permintaan(qUrl,{
metode: 'dapatkan',
onSuccess:fungsi(strResponse){
var resContent=strResponse.responseText;
var strStruct=resContent.substring(resContent.lastIndexOf(,)+1,resContent.length);
qIp.innerHTML=strStruct.split( )[0];
}
});
}menangkap(e){}
}
</skrip>
Tulis kasus uji:
<span id=ip_2>221.123.123.123</span><script type=text/javascript>queryAddress('2')</script>
<span id=ip_3>221.123.123.123</span><script type=text/javascript>queryAddress('3')</script>
<span id=ip_4>221.123.123.123</span><script type=text/javascript>queryAddress('4')</script>
Mari daftar beberapa URL kueri yang saya temukan:
http://www.ip.cn/getip.php?action=queryip&ip_url=221.123.123.123
http://ip.wanvee.cn/GetIp.ashx?ipstr=221.123.123.123
Dua di atas hanya mengembalikan teks
http://www.youdao.com/smartresult-xml/search.s?type=ip&q=221.123.123.123
Ini mengembalikan XML
Setelah selesai menulis, saya menyadari ada masalah. Ajax tidak mendukung pengiriman lintas domain. Ini bukan masalah: kami menggunakan skrip untuk menulis halaman. Gunakan metode pemuatan msxml untuk memuat URL target! data yang kami minati! Lihat posting ini: http://topic.csdn.net/t/20030619/12/1933920.html
Ubah sedikit kode js:
Copy kode kodenya sebagai berikut:
fungsi queryAddress(strID){
mencoba{
var qIp=dokumen.getElementById(ip_+strID);
var qUrl='queryiplocal.asp?ip='+qIp.firstChild.nodeValue;
var ajax=Ajax baru.Permintaan(qUrl,{
metode: 'dapatkan',
onSuccess:fungsi(strResponse){
qIp.innerHTML=strResponse.responseText;
}
});
}menangkap(e){}
}
Berikut ini adalah kode sumber file ASP:
Copy kode kodenya sebagai berikut:
<%
Respon.ContentType=teks/xml
Respon.Charset=GB2312
Redupkan strIP,strPattern
strIP=Permintaan.QueryString(ip)
strPattern=^[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}$
Jika strIP= Atau IsNumeric(strIP) maka
Respon.Akhir()
ElseIf Not serRegValidate(strPattern,strIP) lalu
Respon.Akhir()
Akhiri Jika
Redupkan strURL:strURL=http://www.youdao.com/smartresult-xml/search.s?type=ip&q=
atur parser=Server.CreateObject(MSXML2.DOMDocument)
parser.async=salah
parser.ValidateOnParse=benar
parser.setProperty ServerHTTPRequest, benar
parser.beban(strURL)
jika parser.parseError.errorCode<>0 lalu
Respon.Akhir()
berakhir jika
atur currNode=parser.selectNodes(//produk)
Redupkan strLocal:strLocal=currNode.item(0).selectSingleNode(lokasi).teks
Respon.Tulis Split(strLokal, )(0)
%>