你沒(méi)有進(jìn)行登錄的數(shù)據(jù)庫(kù)判斷吧,在處理表單的頁(yè)面里進(jìn)行一下判斷,select × from tb where username=“$_POST[name]” pwd="$_POST[pwd]" ,判斷一下返回值是不是空,若是空的話就不能登錄就好了,寫個(gè)scriptalert/script然后返回到登錄頁(yè)面就好了
創(chuàng)新互聯(lián)公司是專業(yè)的大東網(wǎng)站建設(shè)公司,大東接單;提供成都做網(wǎng)站、成都網(wǎng)站設(shè)計(jì),網(wǎng)頁(yè)設(shè)計(jì),網(wǎng)站設(shè)計(jì),建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進(jìn)行大東網(wǎng)站開發(fā)網(wǎng)頁(yè)制作和功能擴(kuò)展;專業(yè)做搜索引擎喜愛(ài)的網(wǎng)站,專業(yè)的做網(wǎng)站團(tuán)隊(duì),希望更多企業(yè)前來(lái)合作!
有個(gè)成語(yǔ)叫做有頭有尾,你可以看看性別,年齡那邊是不是完整的?php ?,按照標(biāo)準(zhǔn)的寫法,結(jié)束的分號(hào)還得寫全了。
最上面的那一堆的 $_POST["name"],都需要用isset來(lái)判斷是否存在才能繼續(xù)在下面使用,不然就會(huì)有 Notice: Undefined index: 希望你能記住,千萬(wàn)得長(zhǎng)點(diǎn)心
首先你要建立一個(gè)表,例如是注冊(cè)的用戶表user
,里面的結(jié)構(gòu)有字段
id,
name,nickname,email等。
然后在你的表單處form
action="a.php"
method="post"
name="regform"(如果有圖片上傳,還要加上enctype="multipart/form-data")
,那么點(diǎn)擊表單提交按紐后,此表單將會(huì)交給處理頁(yè)a.php來(lái)作處理。
如果簡(jiǎn)單點(diǎn),你就直接可以將表單傳遞過(guò)來(lái)的數(shù)據(jù)$_POST,直接用sql插入語(yǔ)句,insert
into來(lái)插入到數(shù)據(jù)庫(kù),表user中。例如insert
into
user
set
name='".$_POST['name']."'.............................
你確定注冊(cè)成功?有沒(méi)有寫入數(shù)據(jù)庫(kù)呢?你通過(guò)數(shù)據(jù)庫(kù)管理工具看看你的數(shù)據(jù)庫(kù)有沒(méi)有你更長(zhǎng)提交的東西.
如果沒(méi)有很明顯就是沒(méi)寫到數(shù)據(jù)庫(kù).
如果有的話就可能是你讀去錯(cuò)誤!
$conn_ID = mysql_connect('localhost','root','password');
mysql_select_db("secretdata",$conn_ID);
//$sql="select*from whoareyou where username = '$username'";
$result = mysql_query("select*from whoareyou where username = '$username'");
$username = $_POST['username'];
$userpass = $_POST['userpass'];
$howlong = $_POST['howlong'];
if(mysql_fetch_array($result))
{
echo "center h3對(duì)不起! 此用戶名已經(jīng)被他人使用,請(qǐng)回到前頁(yè)重新輸入:/h3/centerbr";
exit;
}
以上是你代碼的原文,下面是改動(dòng)后的樣子:
$conn_ID = mysql_connect('localhost','root','password');
mysql_select_db("secretdata",$conn_ID);
$username = $_POST['username']; //將這一行移動(dòng)到需要使用$username之前,要知道,php是有先后執(zhí)行順序的。
//$sql="select*from whoareyou where username = '$username'";
$result = mysql_query("select*from whoareyou where username = '$username'"); // 也就是這里,在這條語(yǔ)句之前沒(méi)有對(duì)$username進(jìn)行定義,那么它就永遠(yuǎn)是NULL!!!!!
$userpass = $_POST['userpass']; //
$howlong = $_POST['howlong']; //
if(mysql_fetch_array($result))
{
echo "center h3對(duì)不起! 此用戶名已經(jīng)被他人使用,請(qǐng)回到前頁(yè)重新輸入:/h3/centerbr";
exit;
}
在沒(méi)有if、for、while等改變程序執(zhí)行順序的語(yǔ)句出現(xiàn)時(shí),php是按照語(yǔ)句的先后執(zhí)行順序依次執(zhí)行,下面舉個(gè)例子:
echo $a; //這里將不顯示任何東西。
$a=1;
echo $a; //這里將顯示數(shù)字1,而不是下方再次定義后的2?。?!
$a=2;
echo $a; //這里將顯示最后一次定義的數(shù)字2??!
另外,強(qiáng)烈建議將數(shù)據(jù)庫(kù)連接、查詢、修改等等一系列語(yǔ)句進(jìn)行類的封裝,既安全,又省力。