我在做自己网页时,想从http://www.cz88.net/ip/viewip468.aspx网页中截取所在城市的字符,显示在自己网页中。例如:http://www.cz88.net/ip/viewip468.aspx网页中显示的是:你的IP  222.212.175.226  四川省成都市 电信ADSL 
操作系统  Windows XP , IE 6.0 我只想在我的网页上某处显示:“成都”二字。而其他城市,显示我自己写的一段文字。
由于水平限制,我仅能看懂htm、js、css.

解决方案 »

  1.   

    能否用js下载了http://www.cz88.net/ip/viewip468.aspx网页后,再截取某段字符呢?
      

  2.   

    我曾在本站看到jamfchan 说:
    <? 
    $url   =   "http://sina.com.cn "; 
    $start_str= ' <!--此部分为新浪首页要闻区内容--> '; 
    $end_str= ' </ul> '; 
    //$start_str= ' <!--   博客图文   begin   --> '; 
    //$end_str= ' <!--   博客图文   end   --> '; 
    echo   get_link($url,$start_str,$end_str); function   get_link($url,$start,$end) 

    $content   =   file_get_contents($url); 
    $start_position=strpos($content,$start); 
    $content=substr($content,$start_position); 
    $start_position=strpos($content, "> ")+1;   
    $end_position=strpos($content,$end); 
    $length=$end_position-$start_position; 
    $content=substr($content,$start_position,$length); 
    return   $content; 

    ?> 
    能否修改成我想要那种?
      

  3.   

    今日看到一段源文件:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//ZH-CN" "http://www.w3.org/TR/html4/strict.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="UTF-8"/>
    <title>weather</title>
    <script type="text/javascript">
           var xmlHttp;
    function createXmlHttp()
    {
    if(window.ActiveXObject)
    {
        try { xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");} catch(e){}
    }
    else if(window.XMLHttpRequest)
    {

    try{xmlHttp=new XMLHttpRequest();}catch(e){}

    }
    }
    function gb2utf8(data){ 
       var glbEncode = []; 
       gb2utf8_data = data; 
       execScript("gb2utf8_data = MidB(gb2utf8_data, 1)", "VBScript"); 
       var t=escape(gb2utf8_data).replace(/%u/g,"").replace(/(.{2})(.{2})/g,"%$2%$1").replace(/%([A-Z].)%(.{2})/g,"@$1$2"); 
       t=t.split("@"); 
       var i=0,j=t.length,k; 
       while(++i<j) { 
          k=t[i].substring(0,4); 
          if(!glbEncode[k])  
          { 
             gb2utf8_char = eval("0x"+k); 
             execScript("gb2utf8_char = Chr(gb2utf8_char)", "VBScript"); 
             glbEncode[k]=escape(gb2utf8_char).substring(1,6); 
          } 
          t[i]=glbEncode[k]+t[i].substring(4); 
       } 
       gb2utf8_data = gb2utf8_char = null; 
       return unescape(t.join("%")); 

    function sendxmlHttp(weathercity)
    {
        document.getElementById("test").innerHTML="loading..."  ;
    if(!weathercity)
    {
    httpstr="http://weather.tq121.com.cn/mapanel/index1.php?city=荆州"
    }
    else
    {
    httpstr="http://weather.tq121.com.cn/mapanel/index1.php?city="+weathercity;
    }
    createXmlHttp();
    xmlHttp.open("GET",httpstr,true);
    xmlHttp.onreadystatechange=callbackWeather;
    xmlHttp.send(null);
    }
    function callbackWeather()
    {
    if(xmlHttp.readyState==4)
    if(xmlHttp.status==200)
    {
    var TextDoc=gb2utf8(xmlHttp.responseBody);
    //var pat = /[^\x00-\xff]+/g; //这个是双字节的。就是说带标点符号
    var pat =/"weather">[\u4e00-\u9fa5]+<\/td>/; //这个好象带中文的。
    var pat1 =/"weatheren">\S*<\/td>/; //这个好象带中文的。
    var pat2=/<span class="big-cn">[\u4e00-\u9fa5]+<\/span>/
    var str="<div id="+TextDoc.match(pat);
    var str1="<div id="+TextDoc.match(pat1);
    var str2=TextDoc.match(pat2);
    var patt1=/td/g;
    document.getElementById("test").innerHTML=str2+str.replace(patt1,"div")+str1.replace(patt1,"div");
    }
    }
    //Cookie日期修正函数 function FixCookieDate(date)
    function FixCookieDate(date){
    var base = new Date(0);
    var skew = base.getTime();
    if (skew > 0)date.setTime(date.getTime() - skew);
    }
    function myCustomize(city)
    {
    if(city == "")
    {
    alert("请选择城市");
    return false;
    }
    var expdate = new Date();
    FixCookieDate(expdate);//修正MAC机器的BUG
    expdate.setTime(expdate.getTime() + (1000*60*60*24*365));//设置Cookie的有效期为1年
    setcookie(city,expdate);
    }
    function setcookie(cityname,date)
    {
    document.cookie="userSelect="+ escape(cityname)+";expires="+date+";"+"domain=dodoshop.com.cn";
    alert("定制成功!");

    }
    //获取Cookie函数 function GetCookie()
    function GetCookie(){
    var result;
    var start;
    var end;
    var names="userSelect=";
    var city;
    result=document.cookie;
    start=result.indexOf("userSelect");
    start=(start+names.length);
    end=result.indexOf(";",start);
    if(end==-1)
    end=result.length;
    city=result.substring(start,end);
    if(city!="")
    {
        sendxmlHttp(city);
    }
    else
    {
    city=unescape(city);
    sendxmlHttp("");
    }
    }
    function display()
    {
    GetCookie();
    }
    </script>
    </head>
    <body onLoad="display()">
    <div id="selectoptions">
    <form name="cityform" action="">
    <select name="select2" class="input11" onChange="sendxmlHttp(cityform.select2.options[cityform.select2.selectedIndex].value)">
                        <option value="选择城市" selected>选择城市</option>
                        <option value="北京">北京</option>
                        <option value="上海">上海</option>
                        <option value="天津">天津</option>
                        <option value="广州">广州</option>
                        <option value="深圳">深圳</option>
                        <option value="重庆">重庆</option>
                        <option value="武汉">武汉</option>
                        <option value="荆州">荆州</option>
                        <option value="石家庄">石家庄</option>
                        <option value="太原">太原</option>
                        <option value="呼和浩特">呼和浩特</option>
                        <option value="沈阳">沈阳</option>
                        <option value="长春">长春</option>
                        <option value="哈尔滨">哈尔滨</option>
                        <option value="南京">南京</option>
                        <option value="杭州">杭州</option>
                        <option value="合肥">合肥</option>
                        <option value="福州">福州</option>
                        <option value="南昌">南昌</option>
                        <option value="济南">济南</option>
                        <option value="郑州">郑州</option>
                        <option value="长沙">长沙</option>
                        <option value="南宁">南宁</option>
                        <option value="海口">海口</option>
                        <option value="成都">成都</option>
                        <option value="贵阳">贵阳</option>
                        <option value="昆明">昆明</option>
                        <option value="西安">西安</option>
                        <option value="兰州">兰州</option>
                        <option value="西宁">西宁</option>
                        <option value="银川">银川</option>
                        <option value="拉萨">拉萨</option>
                        <option value="乌鲁木齐">乌鲁木齐</option>
                        <option value="香港">香港</option>
                        <option value="澳门">澳门</option>
                        <option value="台北">台北</option>
                        <option value="纽约">纽约</option>
                        <option value="旧金山">旧金山</option>
                        <option value="东京">东京</option>
                        <option value="汉城">汉城</option>
                        <option value="巴黎">巴黎</option>
                        <option value="伦敦">伦敦</option>
                      </select>
    <div id="test">loading...</div>
                      </form></div>
    </body>
    </html>
    这个网页好像主要做了三个方面的工作:
    1.将中文转换为UTF8;
    2.在表单中提取“城市”,发送到http://weather.tq121.com.cn/mapanel/index1.php?city=;
    3.在返回的xml中,截取字符,显示在网页上。;
    汗颜!不知该怎样修改为己所用。xml与asp有区别吗?
      

  4.   

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//ZH-CN" "http://www.w3.org/TR/html4/strict.dtd"> 
    <html> 
    <head> 
    <meta http-equiv="Content-Type" content="UTF-8"/> 
    <title>weather </title> 
    <script type="text/javascript"> 
          var xmlHttp; 
    function createXmlHttp() 

    if(window.ActiveXObject) 

        try { xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");} catch(e){} 

    else if(window.XMLHttpRequest) 
    { try{xmlHttp=new XMLHttpRequest();}catch(e){} } 

    function gb2utf8(data){ 
      var glbEncode = []; 
      gb2utf8_data = data; 
      execScript("gb2utf8_data = MidB(gb2utf8_data, 1)", "VBScript"); 
      var t=escape(gb2utf8_data).replace(/%u/g,"").replace(/(.{2})(.{2})/g,"%$2%$1").replace(/%([A-Z].)%(.{2})/g,"@$1$2"); 
      t=t.split("@"); 
      var i=0,j=t.length,k; 
      while(++i <j) { 
          k=t[i].substring(0,4); 
          if(!glbEncode[k])  
          { 
            gb2utf8_char = eval("0x"+k); 
            execScript("gb2utf8_char = Chr(gb2utf8_char)", "VBScript"); 
            glbEncode[k]=escape(gb2utf8_char).substring(1,6); 
          } 
          t[i]=glbEncode[k]+t[i].substring(4); 
      } 
      gb2utf8_data = gb2utf8_char = null; 
      return unescape(t.join("%")); 

    function sendxmlHttp(weathercity) 

        document.getElementById("test").innerHTML="loading..."  ; 
    if(!weathercity) 

    httpstr="http://weather.tq121.com.cn/mapanel/index1.php?city=荆州" 

    else 

    httpstr="http://weather.tq121.com.cn/mapanel/index1.php?city="+weathercity; 

    createXmlHttp(); 
    xmlHttp.open("GET",httpstr,true); 
    xmlHttp.onreadystatechange=callbackWeather; 
    xmlHttp.send(null); 

    function callbackWeather() 

    if(xmlHttp.readyState==4) 
    if(xmlHttp.status==200) 

    var TextDoc=gb2utf8(xmlHttp.responseBody); 
    var pat =/"weather">(.*?)<\/td>/; //这个好象带中文的。 
    var pat1 =/"weatheren">(.*?)<\/td>/; //这个好象带中文的。 
    var pat2=/ <span class="big-cn">(.*?)<\/span>/ 
    var str=" <div id="+TextDoc.match(pat); 
    var str1=" <div id="+TextDoc.match(pat1); 
    var str2=TextDoc.match(pat2); 
    var patt1=/td/g; 
    document.getElementById("test").innerHTML=str2+str.replace(patt1,"div")+str1.replace(patt1,"div"); 


    //Cookie日期修正函数 function FixCookieDate(date) 
    function FixCookieDate(date){ 
    var base = new Date(0); 
    var skew = base.getTime(); 
    if (skew > 0)date.setTime(date.getTime() - skew); 

    function myCustomize(city) 

    if(city == "") 

    alert("请选择城市"); 
    return false; 

    var expdate = new Date(); 
    FixCookieDate(expdate);//修正MAC机器的BUG 
    expdate.setTime(expdate.getTime() + (1000*60*60*24*365));//设置Cookie的有效期为1年 
    setcookie(city,expdate); 

    function setcookie(cityname,date) 

    document.cookie="userSelect="+ escape(cityname)+";expires="+date+";"+"domain=dodoshop.com.cn"; 
    alert("定制成功!"); } 
    //获取Cookie函数 function GetCookie() 
    function GetCookie(){ 
    var result; 
    var start; 
    var end; 
    var names="userSelect="; 
    var city; 
    result=document.cookie; 
    start=result.indexOf("userSelect"); 
    start=(start+names.length); 
    end=result.indexOf(";",start); 
    if(end==-1) 
    end=result.length; 
    city=result.substring(start,end); 
    if(city!="") 

        sendxmlHttp(city); 

    else 

    city=unescape(city); 
    sendxmlHttp(""); 


    function display() 
    {
    GetCookie(); 

    </script> 
    </head> 
    <body onLoad="display()"> 
    <div id="selectoptions"> 
    <form name="cityform" action=""> 
    <select name="select2" class="input11" onChange="sendxmlHttp(cityform.select2.options[cityform.select2.selectedIndex].value)"> 
                        <option value="选择城市" selected>选择城市 </option> 
                        <option value="北京">北京 </option> 
                        <option value="上海">上海 </option> 
                        <option value="天津">天津 </option> 
                        <option value="广州">广州 </option> 
                        <option value="深圳">深圳 </option> 
                        <option value="重庆">重庆 </option> 
                        <option value="武汉">武汉 </option> 
                        <option value="荆州">荆州 </option> 
                        <option value="石家庄">石家庄 </option> 
                        <option value="太原">太原 </option> 
                        <option value="呼和浩特">呼和浩特 </option> 
                        <option value="沈阳">沈阳 </option> 
                        <option value="长春">长春 </option> 
                        <option value="哈尔滨">哈尔滨 </option> 
                        <option value="南京">南京 </option> 
                        <option value="杭州">杭州 </option> 
                        <option value="合肥">合肥 </option> 
                        <option value="福州">福州 </option> 
                        <option value="南昌">南昌 </option> 
                        <option value="济南">济南 </option> 
                        <option value="郑州">郑州 </option> 
                        <option value="长沙">长沙 </option> 
                        <option value="南宁">南宁 </option> 
                        <option value="海口">海口 </option> 
                        <option value="成都">成都 </option> 
                        <option value="贵阳">贵阳 </option> 
                        <option value="昆明">昆明 </option> 
                        <option value="西安">西安 </option> 
                        <option value="兰州">兰州 </option> 
                        <option value="西宁">西宁 </option> 
                        <option value="银川">银川 </option> 
                        <option value="拉萨">拉萨 </option> 
                        <option value="乌鲁木齐">乌鲁木齐 </option> 
                        <option value="香港">香港 </option> 
                        <option value="澳门">澳门 </option> 
                        <option value="台北">台北 </option> 
                        <option value="纽约">纽约 </option> 
                        <option value="旧金山">旧金山 </option> 
                        <option value="东京">东京 </option> 
                        <option value="汉城">汉城 </option> 
                        <option value="巴黎">巴黎 </option> 
                        <option value="伦敦">伦敦 </option> 
                      </select> 
    <div id="test">loading... </div> 
                      </form> </div> 
    </body> 
    </html> 
    他的那代码显示不出来,用我的这个可以显示
    直接可以用
      

  5.   

    chinmo您好!
    根据您的2008-11-11 15:10:13的建议,我将该程序修改如下:<HTML>
    <HEAD>
    <TITLE>四川省成都市</TITLE>
    <script language="javascript">
    $url="http://www.hi5360.com/stat/IP2City.asp?j=js"; 
    $start_str= '四'; <!--是否应该转换utf8的字符)
    $end_str= '都 '; 
    echo   get_link($url,$start_str,$end_str); 
    function   get_link($url,$start,$end) 

    $content   =   file_get_contents($url); 
    $start_position=strpos($content,$start); 
    $content=substr($content,$start_position); 
    $start_position=strpos($content, ":")+1;  
    $end_position=strpos($content,$end); 
    $length=$end_position-$start_position; 
    $content=substr($content,$start_position,$length); 
    return   $content; 

    document.getElementById("divweather").innerHTML=$content;
    document.getElementById("divweather").style.visibility="visible";
    </script>
    </HEAD>
    <BODY onLoad="get$content()">
    <div align="center" id="divweather"></div>
    </BODY>
    </HTML>http://www.hi5360.com/stat/IP2City.asp?j=js显示的是:
    document.write("您的IP:222.212.172.157 来自于:四川省成都市 电信ADSL");
    我的网页为什么提取不到“四川省成都”   
      

  6.   

    你先把$content  =  file_get_contents($url); 
    这个返回来的信息输出,看看是什么结果
      

  7.   

    chinmo您好!
       可能让您见笑了,我的编程水平实在太滥。刚学的,第一次动手做。每天只有晚上抽业余学习。有您的帮忙才使我有了信心和勇气。见到您能好义善施,帮了许多人的忙,有许多好友,真的很羡慕。能加您为好友吗?