</pre> 註冊以及登錄驗證模塊</h1><h2>一,用戶信息表的設計</h2><div>1,設計用戶表user表如下:</div><div></div><div><img src="https://img-blog.csdn.net/20140622201650296?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxMjMyNzEwMA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" align="top" alt="" /></div><div></div><div></div><div>2, 此處註冊頁面有一個form表單,用JS函數做一個有效性的檢驗。</div><div></div><div></div><div><pre name="code" class="html"><form name="send" method="post" action="register.php" onSubmit="check()">
..............
<script language="JavaScript">
function check()
{
if (document.getElementByName(username).value=="")
{
alert("請輸入用戶名");
return false;
}
if(document.getElementByName(email).value.indexOf("@")==-1)
{
alert("請輸入有效地Email");
return false;
}
}
</script>
3,用戶登錄頁面同上,一個form 表單,再用js做有效性檢驗。
<html>
<body>
<form name = "send" onSubmit="check()">
<input name="pwd" type="password" >
<input name="submit" type="submit" >
</form>
</body>
</html>
<script language="javascript">
function check()
{
if(document.send.pwd.value=="")
{
alert("密碼爲空");
return false;
}
}
</script>
4,對錶單提交信息做驗證有兩種方式,一種是在服務器端驗證,一種是客戶端驗證。由於服務器端驗證需要往返於服務器與客戶端之間,所以大都是在瀏覽器端排除很多輸入錯誤,減輕服務器負擔。而,很多頁面基本都有表單的輸入,所以可以寫一個通用的JS過濾函數文件,需要時只需加載該文件即可。
<script language="javascript">
class MyString(str)
{
this .str=str;
//去掉串頭部空格
function ltrim(str)
{
var i=0;
while(str.charAt(i)==" ")
{
i++;
}
return str.substring(i,str.length);
}
//去掉串尾部空格
function rtrim(str)
{
var i=str.length;
while(str.charAt(i)==" ")
{
i--;
}
return str.substring(0,i+1)
}
//去掉串頭尾部空格
function trim(str)
{
return ltrim(rtrim(str));
}
}
</script>
<?php
$string = 'April 15, 2003';
$pattern = '/(w+) (d+), (d+)/i';
$replacement = '${1}1,$3';
echo preg_replace($pattern, $replacement, $string);
?>
以上例程會輸出:
April1,2003
<?php
//使用逗號或空格(包含" ", \r, \t, \n, \f)分隔短語
$keywords = preg_split("/[\s,]+/", "hypertext language, programming");
print_r($keywords);
?>
以上例程會輸出:
Array ( [0] => hypertext [1] => language [2] => programming )
<?php>
function checkIlleagalWord()
{
//定義不允許提交的SQL命令以及關鍵字
$words=array() ;
$words[]="add";
$words[]="count";
$words[]="create";
$words[]="delete";
$words[]="drop";
$words[]="from";
$words[]="grant";
$words[]="insert";
$words[]="select";
$words[]="update";
//判斷提交的數據中是否存在以上關鍵字,$_REQUEST中含有所有提交數據
foreach($_REQUEST as $strGot)
{
$strGot=strtolower($strGot); //專爲小寫
foreach($words as $word)
{
if(strstr($strGot,$word))
{
echo "您輸入的內容含有非法字符";
exit();
}
}
}
}
checkIlleagalWord(); //在本文件被包含時即自動調用
</php>
3)標記登錄狀態:用戶登錄成功後,利用session設置一個全局變量,如: