请教各位: 我想用www.hostip.info获得我所在ip地址的信息。如下:
<?php
  $ipinfo  = "http://www.hostip.info/api/get.html?ip=129.128.212.181&position=true";
  $ipinfo1 = file($ipinfo);
  $city = explode(": ", $ipinfo1[1]); //所在ip的国家
  $city2 = $city[1];  $lati =  explode(": ", $ipinfo1[2]); //所在ip的经度
  $lati2 = $lati[1];
  $new=  $lati2;
  $longi =  explode(": ", $ipinfo1[3]); //所在ip的纬度
  $longi2 = $longi[1];  $rr="welcome   to";  
?>然后我想在javascript中得到以上三个变量进行处理:
  <script   language=javascript>  
city3="<?=$city2?>"
        document.write(city3);
 
        longi3="<?=$longi3?>"
        document.write(longi3);         lati3="<?=$lati3?>"
        document.write(lati3);
 
        tt="<?=$rr?>"
        document.write(rr); 
  </script>结果只有tt有值,其他三个从hostip.info返回的都没有值。希望大家帮助解决。

解决方案 »

  1.   

    首先判断下在PHP里那几个变量有没有值先
      

  2.   

    有值,在php中用
    print "
       City      : $city1 <br>
       Logitude      : $longi1 <br>
       Latitude      : $lati1 <br>
       "; 没有问题可以显示的.
      

  3.   

    city3=" <?=$city2?> " 
                    document.write(city3); 
      
                    longi3=" <?=$longi3?> " 
                    document.write(longi3);                   lati3=" <?=$lati3?> " 
                    document.write(lati3); 
    你变量搞错了吧,你JS里调用的是PHP下$city2、$longi3、$lati3变量,而在PHP里有些变量都没有呢。。
    还有,你print的也不是这几个变量。print   " 
          City             :   $city1   <br> 
          Logitude             :   $longi1   <br> 
          Latitude             :   $lati1   <br> 
          ";   
      

  4.   

    问题出现在空格的处理上,
    <?php 
        $ipinfo     =   "http://www.hostip.info/api/get.html?ip=129.128.212.181&position=true"; 
        $ipinfo1   =   file($ipinfo); 
        $city   =   explode(":   ",   $ipinfo1[1]); //所在ip的国家 
        $city2   =  trim( $city[1]);     $lati   =     explode(":   ",   $ipinfo1[2]); //所在ip的经度 
        $lati2   =   trim($lati[1]); 
        $new=     $lati2; 
        $longi   =     explode(":   ",   $ipinfo1[3]); //所在ip的纬度 
        $longi2   =   trim($longi[1]);     $rr="welcome       to";     
    ?> 
    编译就ok了