终于写完了自己做的网站,刚刚上线.使用的是LAMP环境,本人初学php,遇到了很多问题,这里是实战后的总结,有许多错误和不完善,欢迎大家批评与指教!
这里做个广告.我的个人网站是提供大家上传保存自己编写的网页.给需要练习web程序,和分享,展示网页的朋友提供一些方便.
做网页首先就是登入注册页面了.这里总结一下注册页面的设计.
登入界面:
用于将用户名数据发送到服务器:ajax.js
var writeAndCreateFileInfo = "";
//初始化AJAX对象
function initAjax() {
var ajax = false;
if (window.XMLHttpRequest) {
ajax = new XMLHttpRequest();
} else if (window.ActiveXObject) {
ajax = new ActiveXObject('Microsoft.XMLHTTP');
}
return ajax;
}
//URL验证页面, pdata验证的变量值 可以为空,obj是要显示的处理结果,type是自定义的区分username还是emailx
function sendajax(sURL, pdata, obj, type) {
var ajax = initAjax();
//以POST方式传递
ajax.open('POST', sURL, true);
//传递pdata值
ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
ajax.onreadystatechange = function () {
if (ajax.readyState == 4) {
if (ajax.status != 200) {
self.status = "访问出错,请重试!";
}
else {
obj.innerHTML = ajax.responseText;
writeAndCreateFileInfo = ajax.responseText;
if (ajax.responseText == "欢迎来到小墙网")
window.location = "index.php";
}
var a = "";
}
}
switch (type) {
case 1: //用于验证用户名是否存在
ajax.send('username=' + pdata); //将值传递给php页面验证
break;
case 2: //用于验证电子邮件
// ajax.send('email=' + pdata);
break;
case 3: //发送用户名和密码到Login.php pdata包涵参数的名称 ?u=*&p=*$r=*
ajax.send('');
break;
default:
ajax.send('');
}
}
使用checkName.php验证用户名的格式和在数据库中是否存在.最后返回信息.
客户端验证文件: Register.js
var errorInfo = ""; //错误信息
function checkInfo() {
if(checkEmail()=="" && checkPassword()=="")
return true;
else
return false;
}
//账号的验证 使用checkName.php
//至少6位
function checkPassword() {
var userPwd0 = document.getElementById("userPassword0").value;
var userPwd1 = document.getElementById("userPassword1").value;
var pcre_Pwd = /^[0-9a-zA-Z]{6,20}$/;
if (pcre_Pwd.exec(userPwd0)) {
if (pcre_Pwd.exec(userPwd1)) {
if (userPwd0 != userPwd1) {
return "密码两次输入不一致!";
}
}
else {
return "密码格式不正确!";
}
}
else {
return "密码格式不正确!";
}
return "";
}
function checkEmail() {
var userE = document.getElementById("userEmail").value;
var reg = /^(?:[a-z\d]+[_\-\+\.]?)*[a-z\d]+@(?:([a-z\d]+\-?)*[a-z\d]+\.)+([a-z]{2,})+$/i;
if (reg.exec(userE)) {
return "";
}
else {
return "邮箱格式不正确!";
}
}
提交后Register.php再次进行数据的验证,然后保存的数据库中.