最近用php+js+mysql做了一个仿webQQ的课程设计,收获很多,现在将关键的技术总结一下,供大家学习交流。

<1>邮箱验证

用户在注册的时候,会在文本框里输入邮箱,这个时候通过文本框的onblur和onchange事件用Ajax无刷新技术来判断用户输入的邮箱是否合法以及是否与已注册的邮箱冲突。

Js代码

[html]

function checkEmail(Email)

{

var xmlhttp;

if (window.XMLHttpRequest)

{// code for IE7+, Firefox, Chrome, Opera, Safari

xmlhttp=new XMLHttpRequest();

if(xmlhttp.overrideMimeType)

{//设置MIME类别

xmlhttp.overrideMimeType("text/xml");

}

}

else

{// code for IE6, IE5

xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");

}

var url="checkEmail.php?email="+document.getElementById("email").value; //转到checkEmail.php进行验证

xmlhttp.open("GET",url,true);

xmlhttp.onreadystatechange=function()

{

if (xmlhttp.readyState==4 && xmlhttp.status==200)

{

document.getElementById("error1").innerHTML=xmlhttp.responseText;

}

}

xmlhttp.send(null);

}

function checkEmail(Email)

{

var xmlhttp;

if (window.XMLHttpRequest)

{// code for IE7+, Firefox, Chrome, Opera, Safari

xmlhttp=new XMLHttpRequest();

if(xmlhttp.overrideMimeType)

{//设置MIME类别

xmlhttp.overrideMimeType("text/xml");

}

}

else

{// code for IE6, IE5

xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");

}

var url="checkEmail.php?email="+document.getElementById("email").value; //转到checkEmail.php进行验证

xmlhttp.open("GET",url,true);

xmlhttp.onreadystatechange=function()

{

if (xmlhttp.readyState==4 && xmlhttp.status==200)

{

document.getElementById("error1").innerHTML=xmlhttp.responseText;

}

}

xmlhttp.send(null);

}

PHP代码

[php]

*邮箱不能为空!";

}

else

{

if($len>50)

{

echo "*邮箱不要超过50个字符!";

}

else

{

if(eregi("^[_.0-9a-z-]+@([0-9a-z][0-9a-z-]+.)+[a-z]{2,3}$",$email)) //在php中用正则表达式验证邮箱

{

$sql="select * from user where email='$email'"; //连接数据库进行查询看邮箱是否被用

$result = mysql_query($sql);

$num=mysql_num_rows($result);

if($num>0)

{

echo "*该邮箱已被用!";

}

else

{

echo "*邮箱可用!";

}

}

else

{

echo "*该邮箱不可用!";

}

}

}

?>

*邮箱不能为空!";

}

else

{

if($len>50)

{

echo "*邮箱不要超过50个字符!";

}

else

{

if(eregi("^[_.0-9a-z-]+@([0-9a-z][0-9a-z-]+.)+[a-z]{2,3}$",$email)) //在php中用正则表达式验证邮箱

{

$sql="select * from user where email='$email'"; //连接数据库进行查询看邮箱是否被用

$result = mysql_query($sql);

$num=mysql_num_rows($result);

if($num>0)

{

echo "*该邮箱已被用!";

}

else

{

echo "*邮箱可用!";

}

}

else

{

echo "*该邮箱不可用!";

}

}

}

?>

通过对邮箱验证的学习,我想其他的验证应该很简单了吧!(未完待续)

摘自 wyzhangchengjin123

lt;++mysql_php+js+mysql设计的仿webQQ-lt;1gt;邮箱验证相关推荐

  1. php mysql qq登录_php+js+mysql设计的仿webQQ-4登陆和注册

    <6>登陆验证 Js代码 function checkLogin() { var xmlhttp; if (window.XMLHttpRequest) {// code for IE7+ ...

  2. Node.js+MySQL开发的B2C商城系统源码+数据库(微信小程序端+服务端),界面高仿网易严选商城

    下载地址:Node.js+MySQL开发的B2C商城系统源码+数据库(微信小程序端+服务端) NideShop商城(微信小程序端) 界面高仿网易严选商城(主要是2016年wap版) 测试数据采集自网易 ...

  3. 【实战项目惜时App需求分析说明书】Vue-cli3+Vant UI+Vue-element-admin+Egg.js+Mysql

    小编的第二个全栈项目,接下来会继续推出其中的源码设计和功能分析博客,大家多多支持呀! 项目源码地址: https://gitee.com/lwkgood/time-client (客户端) https ...

  4. html5+css3界面设计,仿微信支付设计数字键盘

    html5+css3界面设计,仿微信支付设计数字键盘 可以增加数字,删除数字,可以提交 效果图如下: 部分代码: <!DOCTYPE html> <html> <head ...

  5. node mysql商城开发_NideShop:基于Node.js+MySQL开发的微信小程序商城开源啦

    NideShop:基于Node.js+MySQL开发的微信小程序商城开源啦 发布时间:2020-04-14 04:23:37 来源:51CTO 阅读:2894 作者:ch10mmt 高仿网易严选的微信 ...

  6. vue mysql 电商_mei-shopone: nuxt(vue)+node(egg.js)+mysql晒点风格极简商城,电商系统。适合入门全栈开发,槑先森工作室。...

    mei-shopone 前言 此项目是基于nuxt+egg+mysql开发的在线商城系统全栈模板,目前前端部分已适配移动端.面向开发人员友好,快速,轻巧,干净,并包含W3有效源代码.后台管理系统基于v ...

  7. 基于javaweb的设备台账管理系统(java+ssm+html+jsp+js+mysql)

    基于javaweb的设备台账管理系统(java+ssm+html+jsp+js+mysql) 运行环境 Java≥8.MySQL≥5.7.Tomcat≥8 开发工具 eclipse/idea/myec ...

  8. HTML期末大作业 ~ 马尔代夫旅游网页设计作业成品 ~ HTML+CSS+JS网页设计期末课程大作业 ~ web前端开发技术 ~ web课程设计网页规划与设计...

    HTML期末大作业 ~ 大学生旅游官网网页设计作业成品 ~ HTML+CSS+JS网页设计期末课程大作业 ~ web前端开发技术 ~ web课程设计网页规划与设计~ 临近期末, 你还在为HTML网页设 ...

  9. HTML奥运网页5页面文化 ~ 体育学生网页设计作业 ~ HTML+CSS+JS网页设计期末课程大作业 ~ web前端开发技术 ~ web课程设计网页规划与设计

    HTML奥运网页5页面文化 ~ 体育学生网页设计作业 ~ HTML+CSS+JS网页设计期末课程大作业 ~ web前端开发技术 ~ web课程设计网页规划与设计 临近期末, 你还在为HTML网页设计结 ...

最新文章

  1. jquery radio 取值
  2. 多视图几何三维重建实战系列之MVSNet
  3. C ++ 11基于反向范围的for循环
  4. 【专利】检索网站到底哪个能用?
  5. vue组件命名指南,不为取名而纠结
  6. 工作245:vue的注意规范之v-if 与 v-for 一起使用
  7. url中能出现的字符_网站URL配置4个技巧,轻松获得更多流量
  8. 报错’TypeError: only integer scalar arrays can be converted to a scalar index‘
  9. 洛谷.5283.[十二省联考2019]异或粽子(可持久化Trie 堆)
  10. 基于树莓派的语音邮件收发
  11. 【LwM2M】LwM2M协议官方文档
  12. 计算机培训教学计划,计算机培训教学计划.doc
  13. 基于微信公众号的图书借阅平台设计与实现
  14. 十年游戏建模师给想学次世代游戏建模同学的一些忠告,太受益了
  15. python的spider程序下载_Python Spider
  16. 时代落在英伟达身上的是粒什么沙,国产GPU的机会又在哪?
  17. 留存/复购cohort
  18. 2565: 最长双回文串
  19. C/C++ 中 exit() 函数
  20. [UVA 10635] Prince ans Princess

热门文章

  1. Windows远程连接的用户名和密码怎么设置?
  2. @SuppressWarnings使用的正确姿势
  3. Tomcat(三):日志
  4. java httpcomponents_java – 如何使用Apache httpcomponents从NHttpRequ...
  5. 云服务器如何链接本地打印机_利用FileZilla搭建云服务器FTP服务端和本地客户端...
  6. dbeaver无法修改表数据_隐藏彩蛋:你知道python有一个内置的数据库吗?
  7. mysql gtid深入_深入理解MySQL 5.7 GTID系列(四):mysql.gtid_executedPREVIOUS GTID EVENT
  8. labview 远程连接linux,SSH交互式通信总结:expect、plink、putty、sshpass、ALAB SSH
  9. oracle数据库连接满了,ORACLE数据库连接数满的分析及优化
  10. python中的装饰器、装饰器模式_python 设计模式之装饰器模式 Decorator Pattern