用 移动WEB 窗体,这样你可以不懂 WML 语法就可以做WAP站点

解决方案 »

  1.   

    最好用移动Web窗体,至于Wml的格式如下。!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">
    <?xml version="1.0" encoding="gb2312" ?><%
    Response.Expires=-1;
    Response.ContentType="text/vnd.wap.wml";
    Response.ContentEncoding=System.Text.Encoding.GetEncoding("gb2312");string Mobile="13888656531";//获取手机号码……
    /*
    if(Request["HTTP_X_Up_Calling_line_ID"]==null || Request["HTTP_X_Up_Calling_line_ID"].ToString().Trim()=="")
    {
       Response.Redirect("../ShowMessage.aspx?message=对不起,系统不能正确获取你的手机号码,不能访问此页面!");
       return;
    }
    else
    {
    Mobile=Request["HTTP_X_Up_Calling_line_ID"].ToString().Trim();
       
        string NewSql="select * from T_WAP_WEBUSER where F_MOBILE='"+Mobile+"'";
        SqlConnection NewConn=new SqlConnection(YNYD_WAP.Connection.Connstr.Conns);
    object tempObj=YNYD_WAP.Common.Pubs.FetchOneField("F_ID",NewSql,NewConn);
    if(tempObj==null)
    {
          Response.Redirect("../ShowMessage.aspx?message=对不起," +Mobile+"不存在,不能访问此页面!");
          return;
    }
    if(NewConn!=null) NewConn.Close();
     }
    *///生成随机数
    Random Rdm=new Random();
    string username="username"+Rdm.Next(1,999).ToString();
    string password="password"+Rdm.Next(1,999).ToString();
    string ChkNum="ChkLogin"+Rdm.Next(1,99).ToString()+".aspx";string fileDir=Server.MapPath("/");
    StreamReader sr=new StreamReader(fileDir+"/Login/ChkLogin.aspx",System.Text.Encoding.GetEncoding("gb2312"));
    StreamWriter sw=new StreamWriter(fileDir+"/Login/"+ChkNum,false,System.Text.Encoding.GetEncoding("gb2312"));
    while(sr.Peek()>=0)
    {

    sw.WriteLine(sr.ReadLine().ToString().Trim());
    }
    sw.Close();
    sr.Close();string Url=ChkNum + "?LoginName=" + username + "&LoginPwd=" + password + "&Mobile=" +  Mobile;
    %>
    <wml>
    <card id="UserLogin" title="云南移动WAP服务" newcontext="true">
    <%
    %>
    <p>[云南移动通信有限责任公司]</p>
    <p>请输入你的用户名称和密码。<br />
    </p>
    <fieldset>
        用户名称:
        <br />
        <input type="text" name="<%=username%>" maxlength="50" size="10" emptyok="false" title="请输入用户名称" />
        <br />
                用户密码:
                <br />
        <input type="password" name="<%=password%>" maxlength="50" size="10" emptyok="false" title="请输入用户密码" />
        <br />
            <br />
    <do type="accept" label="登陆">
    <go href="<%=ChkNum%>" method="post">
    <postfield name="LoginName" value="$(<%=username%>:n)" />
    <postfield name="LoginPwd" value="$(<%=password%>:n)" />
    <postfield name="Mobile" value="<%=Mobile%>" />
    </go>
    </do>
    </fieldset>
    </card>
    </wml>以上是一个简单的手机登录
      

  2.   

    中国移动目前的大环境下, 你还是手写代码吧. 否则很多的手机访问不了的.3楼给出的代码过时了. 现在一般的网站是没有取号码的能力的. 你可以做个页面,专门取手机访问的HTTP头信息的,如ALL_RAW等,然后请全国各地的朋友用手机访问测试, 再与电脑访问的区分一下,就可以看出手机访问的有哪些共同点,与电脑有哪些不同,再抓出这些特征,就可以限定电脑访问了. 当然,没有100%的准确. 还有一个办法是可以把电脑访问常用的UA都排除掉,不允许访问.