當訪問者在我的網站上註冊時,他們將作爲團體的創始成員或加入現有團體的人員這樣做。沒有人是「無組織」。我有一個註冊頁面,其中包含以下字段:名字,姓氏,(用於選擇組類型的單選按鈕:新建或現有),組名,組密碼,電子郵件,密碼,確認密碼。我特別關心單選按鈕,組名和組密碼。
我在尋找的具體功能是這樣的: 如果選擇「新建」,AJAX會檢查數據庫中是否存在組名,顯示「Good」或「Already taken」。另外:表單提交時,密碼保存到數據庫。
如果選擇「Existing」,AJAX將檢查組名是否存在於db中,並顯示「匹配」或「不存在」。同時:提交表格時,會根據數據庫檢查密碼。如何使單選按鈕控制所有這些?
這個基本知識我認爲我有一個處理,但如何讓單選按鈕指示如此之多超出了我。任何幫助,將不勝感激。
下面是我的php文件的一部分。 (順便說一句,我一直在寫的mysqli此項目。)
<h1>Register</h1>
<form action="register.php" method="post">
<fieldset>
<p><b>First Name:</b> <input type="text" name="first_name" size="20" maxlength="20" value="<?php if (isset($trimmed['first_name'])) echo $trimmed['first_name']; ?>" /></p>
<p><b>Last Name:</b> <input type="text" name="last_name" size="20" maxlength="40" value="<?php if (isset($trimmed['last_name'])) echo $trimmed['last_name']; ?>" /></p>
<p><b>Are you registering a new group or joining an existing group?</b> <br />
New:<input type="radio" value="new" name="gtype">
Existing:<input type="radio" value="existing" name="gtype"> </p>
<p><b>Group ID:</b> <input type="text" name="group_id" size="20" maxlength="40" value="<?php if (isset($trimmed['group_id'])) echo $trimmed['group_id']; ?>" /></p>
<p><b>Group Password:</b> <input type="password" name="gpass" size="8" maxlength="5" />
<small>Use only numbers. Must be 5 digits long.</small></p>
<p><b>Email Address:</b>
<input type="text" name="email" size="30" maxlength="80" value="<?php if (isset($trimmed['email'])) echo $trimmed['email']; ?>" onBlur='checkEmail(this)'/><span id='info'></span></p>
<p><b>User Password:</b>
<input type="password" name="password1" size="8" maxlength="4" />
<small>Use only numbers. Must be 4 digits long.</small></p>
<p><b>Confirm Password:</b> <input type="password" name="password2" size="4" maxlength="4" /></p>
</fieldset>
<div align="center"><input type="submit" name="submit" value="Register" /></div>
<input type="hidden" name="submitted" value="TRUE" />
</form>
'如果「Existing」選中,AJAX檢查組名是否存在於數據庫中'不要忘記在提交表單時再次進行相同的檢查,否則將會出現安全漏洞 – 2010-07-01 19:10:17