这个问题和php关系不大吧。没做过,关注。

解决方案 »

  1.   

    我以前写的一点代码,仅供参考$mobile = new mobile;
    if(!(is_int($mobile->getPhoneNumber()) || $mobile->getPhoneNumber())){
    setCookie('isWap', '0', $cookietime, $cookiepath, $cookiedomain);
    include template('index');
    }else{
    setCookie('isWap', '1', $cookietime, $cookiepath, $cookiedomain);
    Header("Location: wap.php");
    }
    这个是判断是手机浏览还是IE浏览,如果不是手机浏览,就转到正常的页面,否则转到wap页面下面这个类是我上面使用的,也是在网上找到的。------------------------------------------
    <?php
    /**
    *  &Agrave;à&Atilde;&ucirc;: mobile
    *  &Atilde;è&Ecirc;&ouml;: &Ecirc;&Ouml;&raquo;ú&ETH;&Aring;&Iuml;&cent;&Agrave;à
    *  &AElig;&auml;&Euml;&ucirc;: ±à&ETH;&acute;2004-11-16
    */
    class mobile
    {
        /**
        *   &ordm;&macr;&Ecirc;&yacute;&Atilde;&ucirc;&sup3;&AElig;:   getPhoneNumber
        *   &ordm;&macr;&Ecirc;&yacute;&sup1;&brvbar;&Auml;&Uuml;:   &Egrave;&iexcl;&Ecirc;&Ouml;&raquo;ú&ordm;&Aring;
        *   &Ecirc;&auml;&Egrave;&euml;&sup2;&Icirc;&Ecirc;&yacute;:   none
        *   &ordm;&macr;&Ecirc;&yacute;·&micro;&raquo;&Oslash;&Ouml;&micro;: &sup3;&Eacute;&sup1;&brvbar;·&micro;&raquo;&Oslash;&ordm;&Aring;&Acirc;&euml;&pound;&not;&Ecirc;§°&Uuml;·&micro;&raquo;&Oslash;false
        *   &AElig;&auml;&Euml;ü&Euml;&micro;&Atilde;÷:   &Euml;&micro;&Atilde;÷
        */
        function getPhoneNumber()
        {
            if (isset($_SERVER['HTTP_X_NETWORK_INFO']))
            {
                $str1 = $_SERVER['HTTP_X_NETWORK_INFO'];
                $getstr1 = preg_replace('/(.*,)(11[d])(,.*)/i','\2',$str1);
                Return $getstr1;
            }
            elseif (isset($_SERVER['HTTP_X_UP_CALLING_LINE_ID']))
            {
                $getstr2 = $_SERVER['HTTP_X_UP_CALLING_LINE_ID'];
                Return $getstr2;
            }
            elseif (isset($_SERVER['HTTP_X_UP_SUBNO']))
            {
                $str3 = $_SERVER['HTTP_X_UP_SUBNO'];
                $getstr3 = preg_replace('/(.*)(11[d])(.*)/i','\2',$str3);
                Return $getstr3;
            }
            elseif (isset($_SERVER['DEVICEID']))
            {
                Return $_SERVER['DEVICEID'];
            }
            else
            {
                Return false;
            }
        }    /**
        *   &ordm;&macr;&Ecirc;&yacute;&Atilde;&ucirc;&sup3;&AElig;:   getHttpHeader
        *   &ordm;&macr;&Ecirc;&yacute;&sup1;&brvbar;&Auml;&Uuml;:   &Egrave;&iexcl;&Iacute;·&ETH;&Aring;&Iuml;&cent;
        *   &Ecirc;&auml;&Egrave;&euml;&sup2;&Icirc;&Ecirc;&yacute;:   none
        *   &ordm;&macr;&Ecirc;&yacute;·&micro;&raquo;&Oslash;&Ouml;&micro;: &sup3;&Eacute;&sup1;&brvbar;·&micro;&raquo;&Oslash;&ordm;&Aring;&Acirc;&euml;&pound;&not;&Ecirc;§°&Uuml;·&micro;&raquo;&Oslash;false
        *   &AElig;&auml;&Euml;ü&Euml;&micro;&Atilde;÷:   &Euml;&micro;&Atilde;÷
        */
        function getHttpHeader()
        {
            $str = '';
            foreach ($_SERVER as $key=>$val)
            {
                $gstr = str_replace("&","&",$val);
                $str.= "$key -> ".$gstr."\r\n";
            }
            Return $str;
        }    /**
        *   &ordm;&macr;&Ecirc;&yacute;&Atilde;&ucirc;&sup3;&AElig;:   getUA
        *   &ordm;&macr;&Ecirc;&yacute;&sup1;&brvbar;&Auml;&Uuml;:   &Egrave;&iexcl;UA
        *   &Ecirc;&auml;&Egrave;&euml;&sup2;&Icirc;&Ecirc;&yacute;:   none
        *   &ordm;&macr;&Ecirc;&yacute;·&micro;&raquo;&Oslash;&Ouml;&micro;: &sup3;&Eacute;&sup1;&brvbar;·&micro;&raquo;&Oslash;&ordm;&Aring;&Acirc;&euml;&pound;&not;&Ecirc;§°&Uuml;·&micro;&raquo;&Oslash;false
        *   &AElig;&auml;&Euml;ü&Euml;&micro;&Atilde;÷:   &Euml;&micro;&Atilde;÷
        */
        function getUA()
        {
            if (isset($_SERVER['HTTP_USER_AGENT']))
            {
                Return $_SERVER['HTTP_USER_AGENT'];
            }
            else
            {
                Return false;
            }
        }    /**
        *   &ordm;&macr;&Ecirc;&yacute;&Atilde;&ucirc;&sup3;&AElig;:   getPhoneType
        *   &ordm;&macr;&Ecirc;&yacute;&sup1;&brvbar;&Auml;&Uuml;:   &Egrave;&iexcl;&micro;&Atilde;&Ecirc;&Ouml;&raquo;ú&Agrave;à&ETH;&Iacute;
        *   &Ecirc;&auml;&Egrave;&euml;&sup2;&Icirc;&Ecirc;&yacute;:   none
        *   &ordm;&macr;&Ecirc;&yacute;·&micro;&raquo;&Oslash;&Ouml;&micro;: &sup3;&Eacute;&sup1;&brvbar;·&micro;&raquo;&Oslash;string&pound;&not;&Ecirc;§°&Uuml;·&micro;&raquo;&Oslash;false
        *   &AElig;&auml;&Euml;ü&Euml;&micro;&Atilde;÷:   &Euml;&micro;&Atilde;÷
        */
        function getPhoneType()
        {
            $ua = $this->getUA();
            if($ua!=false)
            {
                $str = explode(' ',$ua);
                Return $str[0];
            }
            else
            {
                Return false;
            }
        }    /**
        *   &ordm;&macr;&Ecirc;&yacute;&Atilde;&ucirc;&sup3;&AElig;:   isOpera
        *   &ordm;&macr;&Ecirc;&yacute;&sup1;&brvbar;&Auml;&Uuml;:   &Aring;&ETH;&para;&Iuml;&Ecirc;&Ccedil;·&ntilde;&Ecirc;&Ccedil;opera
        *   &Ecirc;&auml;&Egrave;&euml;&sup2;&Icirc;&Ecirc;&yacute;:   none
        *   &ordm;&macr;&Ecirc;&yacute;·&micro;&raquo;&Oslash;&Ouml;&micro;: &sup3;&Eacute;&sup1;&brvbar;·&micro;&raquo;&Oslash;string&pound;&not;&Ecirc;§°&Uuml;·&micro;&raquo;&Oslash;false
        *   &AElig;&auml;&Euml;ü&Euml;&micro;&Atilde;÷:   &Euml;&micro;&Atilde;÷
        */
        function isOpera()
        {
            $uainfo = $this->getUA();
            if (preg_match('/.*Opera.*/i',$uainfo))
            {
                Return true;
            }
            else
            {
                Return false;
            }
        }    /**
        *   &ordm;&macr;&Ecirc;&yacute;&Atilde;&ucirc;&sup3;&AElig;:   isM3gate
        *   &ordm;&macr;&Ecirc;&yacute;&sup1;&brvbar;&Auml;&Uuml;:   &Aring;&ETH;&para;&Iuml;&Ecirc;&Ccedil;·&ntilde;&Ecirc;&Ccedil;m3gate
        *   &Ecirc;&auml;&Egrave;&euml;&sup2;&Icirc;&Ecirc;&yacute;:   none
        *   &ordm;&macr;&Ecirc;&yacute;·&micro;&raquo;&Oslash;&Ouml;&micro;: &sup3;&Eacute;&sup1;&brvbar;·&micro;&raquo;&Oslash;string&pound;&not;&Ecirc;§°&Uuml;·&micro;&raquo;&Oslash;false
        *   &AElig;&auml;&Euml;ü&Euml;&micro;&Atilde;÷:   &Euml;&micro;&Atilde;÷
        */
        function isM3gate()
        {
            $uainfo = $this->getUA();
            if (preg_match('/M3Gate/i',$uainfo))
            {
                Return true;
            }
            else
            {
                Return false;
            }
        }    /**
        *   &ordm;&macr;&Ecirc;&yacute;&Atilde;&ucirc;&sup3;&AElig;:   getHttpAccept
        *   &ordm;&macr;&Ecirc;&yacute;&sup1;&brvbar;&Auml;&Uuml;:   &Egrave;&iexcl;&micro;&Atilde;HA
        *   &Ecirc;&auml;&Egrave;&euml;&sup2;&Icirc;&Ecirc;&yacute;:   none
        *   &ordm;&macr;&Ecirc;&yacute;·&micro;&raquo;&Oslash;&Ouml;&micro;: &sup3;&Eacute;&sup1;&brvbar;·&micro;&raquo;&Oslash;string&pound;&not;&Ecirc;§°&Uuml;·&micro;&raquo;&Oslash;false
        *   &AElig;&auml;&Euml;ü&Euml;&micro;&Atilde;÷:   &Euml;&micro;&Atilde;÷
        */
        function getHttpAccept()
        {
            if (isset($_SERVER['HTTP_ACCEPT']))
            {
                Return $_SERVER['HTTP_ACCEPT'];
            }
            else
            {
                Return false;
            }
        }    /**
        *   &ordm;&macr;&Ecirc;&yacute;&Atilde;&ucirc;&sup3;&AElig;:   getIP
        *   &ordm;&macr;&Ecirc;&yacute;&sup1;&brvbar;&Auml;&Uuml;:   &Egrave;&iexcl;&micro;&Atilde;&Ecirc;&Ouml;&raquo;úIP
        *   &Ecirc;&auml;&Egrave;&euml;&sup2;&Icirc;&Ecirc;&yacute;:   none
        *   &ordm;&macr;&Ecirc;&yacute;·&micro;&raquo;&Oslash;&Ouml;&micro;: &sup3;&Eacute;&sup1;&brvbar;·&micro;&raquo;&Oslash;string
        *   &AElig;&auml;&Euml;ü&Euml;&micro;&Atilde;÷:   &Euml;&micro;&Atilde;÷
        */
        function getIP()
        {
            $ip=getenv('REMOTE_ADDR');
            $ip_ = getenv('HTTP_X_FORWARDED_FOR');
            if (($ip_ != "") && ($ip_ != "unknown"))
            {
                $ip=$ip_;
            }
            return $ip;
        }
    }
    ?>
      

  2.   

    中文怎么是乱码,奇怪
    在发一下。不好意思,不会修改。
    ----------------------------<?php
    /**
    *  类名: mobile
    *  描述: 手机信息类
    *  其他: 编写2004-11-16
    */
    class mobile
    {
        /**
        *   函数名称:   getPhoneNumber
        *   函数功能:   取手机号
        *   输入参数:   none
        *   函数返回值: 成功返回号码,失败返回false
        *   其它说明:   说明
        */
        function getPhoneNumber()
        {
            if (isset($_SERVER['HTTP_X_NETWORK_INFO']))
            {
                $str1 = $_SERVER['HTTP_X_NETWORK_INFO'];
                $getstr1 = preg_replace('/(.*,)(11[d])(,.*)/i','\2',$str1);
                Return $getstr1;
            }
            elseif (isset($_SERVER['HTTP_X_UP_CALLING_LINE_ID']))
            {
                $getstr2 = $_SERVER['HTTP_X_UP_CALLING_LINE_ID'];
                Return $getstr2;
            }
            elseif (isset($_SERVER['HTTP_X_UP_SUBNO']))
            {
                $str3 = $_SERVER['HTTP_X_UP_SUBNO'];
                $getstr3 = preg_replace('/(.*)(11[d])(.*)/i','\2',$str3);
                Return $getstr3;
            }
            elseif (isset($_SERVER['DEVICEID']))
            {
                Return $_SERVER['DEVICEID'];
            }
            else
            {
                Return false;
            }
        }    /**
        *   函数名称:   getHttpHeader
        *   函数功能:   取头信息
        *   输入参数:   none
        *   函数返回值: 成功返回号码,失败返回false
        *   其它说明:   说明
        */
        function getHttpHeader()
        {
            $str = '';
            foreach ($_SERVER as $key=>$val)
            {
                $gstr = str_replace("&","&",$val);
                $str.= "$key -> ".$gstr."\r\n";
            }
            Return $str;
        }    /**
        *   函数名称:   getUA
        *   函数功能:   取UA
        *   输入参数:   none
        *   函数返回值: 成功返回号码,失败返回false
        *   其它说明:   说明
        */
        function getUA()
        {
            if (isset($_SERVER['HTTP_USER_AGENT']))
            {
                Return $_SERVER['HTTP_USER_AGENT'];
            }
            else
            {
                Return false;
            }
        }    /**
        *   函数名称:   getPhoneType
        *   函数功能:   取得手机类型
        *   输入参数:   none
        *   函数返回值: 成功返回string,失败返回false
        *   其它说明:   说明
        */
        function getPhoneType()
        {
            $ua = $this->getUA();
            if($ua!=false)
            {
                $str = explode(' ',$ua);
                Return $str[0];
            }
            else
            {
                Return false;
            }
        }    /**
        *   函数名称:   isOpera
        *   函数功能:   判断是否是opera
        *   输入参数:   none
        *   函数返回值: 成功返回string,失败返回false
        *   其它说明:   说明
        */
        function isOpera()
        {
            $uainfo = $this->getUA();
            if (preg_match('/.*Opera.*/i',$uainfo))
            {
                Return true;
            }
            else
            {
                Return false;
            }
        }    /**
        *   函数名称:   isM3gate
        *   函数功能:   判断是否是m3gate
        *   输入参数:   none
        *   函数返回值: 成功返回string,失败返回false
        *   其它说明:   说明
        */
        function isM3gate()
        {
            $uainfo = $this->getUA();
            if (preg_match('/M3Gate/i',$uainfo))
            {
                Return true;
            }
            else
            {
                Return false;
            }
        }    /**
        *   函数名称:   getHttpAccept
        *   函数功能:   取得HA
        *   输入参数:   none
        *   函数返回值: 成功返回string,失败返回false
        *   其它说明:   说明
        */
        function getHttpAccept()
        {
            if (isset($_SERVER['HTTP_ACCEPT']))
            {
                Return $_SERVER['HTTP_ACCEPT'];
            }
            else
            {
                Return false;
            }
        }    /**
        *   函数名称:   getIP
        *   函数功能:   取得手机IP
        *   输入参数:   none
        *   函数返回值: 成功返回string
        *   其它说明:   说明
        */
        function getIP()
        {
            $ip=getenv('REMOTE_ADDR');
            $ip_ = getenv('HTTP_X_FORWARDED_FOR');
            if (($ip_ != "") && ($ip_ != "unknown"))
            {
                $ip=$ip_;
            }
            return $ip;
        }
    }
    ?>
      

  3.   

    to:arhui007(扬帆远航) ( ) 楼主问的是在windows ce的IE浏览器和wap浏览器中实现跳转,这个问题就我有限的知识来推测如下:
    程序之间跳转的问题,在windows xp系统之中,ie浏览器可以通过activx插件来调用别的程序功能。启动别的程序应该是可以的。windows ce就不知道行不行了。还有,在ce上面的ie浏览器中,可以直接点击拨号链接拨号吗?wap浏览器上面可以。
    应该可以,没用过智能手机无从推测。