第一步:用戶注冊時輸入手機號,網站首先要通過JS或者ajax+php驗證這個號碼是不是正確的手機號。
第二步:用戶點擊發送手機驗證碼,通過ajax把手機號傳到php,這時php生成一個隨機的驗證碼保存在session中,然后通過短信接口把這個驗證碼發送到這個手機號中。
第三步:用戶輸入手機收到的驗證碼注冊。網站用session中的驗證碼和用戶輸入的驗證碼比較。
這里使用的是中國網建的短信發送驗證方式。使用這些代碼就可以實現網站向手機發送驗證碼或者是發送短信的功能,在使用的時候,注意URL地址的拼接,也就是注意參數的賦值都是什么意思。
protected void Page_Load(object sender, EventArgs e)
{
string str= GetHtmlFromUrl("http://utf8.sms.webchinese.cn/?Uid=mengxingfeixiang&Key=8cfd1761745503325da4&smsMob=18306394411&smsText=【aa】");
string a = str;
string b = str;
}
///發送驗證碼
http://utf8.sms.webchinese.cn/?Uid=mengxingfeixiang&Key=8cfd1761745503325da4&smsMob=18306394411&smsText=【aa】
/// uid:就是中國網建注冊時的賬號
/// key表示的是對應賬號秘鑰,注意的是不是注冊密碼
/// smsMob表示的是發送的手機號
/// smsText表示的是發送到對應手機號的短信
///
public string GetHtmlFromUrl(string url)
{
string strRet = null;
if (url == null || url.Trim().ToString() == "")
{
return strRet;
}
string targeturl = url.Trim().ToString();
try
{
HttpWebRequest hr = (HttpWebRequest)WebRequest.Create(targeturl);
hr.UserAgent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)";
hr.Method = "GET";
hr.Timeout = 30 * 60 * 1000;
WebResponse hs = hr.GetResponse();
Stream sr = hs.GetResponseStream();
StreamReader ser = new StreamReader(sr, Encoding.Default);
strRet = ser.ReadToEnd();
}
catch (Exception ex)
{
strRet = null;
}
return strRet;
}