麻辣家族討論版版's Archiver

小誌 發表於 2011-4-22 02:41

10-2-3 資料欄位驗證

[b][/b][color=DarkRed][size=4]10-2-3   資料欄位驗證[/size][/color]
當連線的瀏覽者於「加入會員」表單中填寫好相關資料,按下「線上新增」按鈕之後,填寫好的資料將交由記錄以及處理新增會員資料的PHP程式「addin.php」,來寫入資料庫檔案,填寫好的資料寫入資料庫之前,我們必須先驗證連線的瀏覽者在「加入會員」表單中各個欄位中是否都有填寫資料。

若「加入會員」表單中的欄位有未填入資料而留白者,將不予接受,不但資料不會寫入資料庫檔案,而且將產生一段錯誤訊息於網頁中,我們以未填寫密碼欄位為例,如下圖:
[attach]5718[/attach]
圖10-10   密碼欄位沒輸入資料。

小誌 發表於 2011-4-22 02:41

在「加入會員」表單中共有四個欄位必須資料驗證,分別是Name(尊姓大名)、Email(E-mail)、ID(登入名稱)與Password(登入密碼)等四個欄位,當我們的記錄以及處理新增會員資料的PHP程式addin.php,接收到來自「加入會員」表單的欄位資料後,只要透過「If」判斷敘述來驗證欄位資料內容是否為「Empty」就可知道資料欄位內容是否留白,若資料欄位內容留白則呼叫「msg」函數來產生一個錯誤訊息的網頁。[code]/判斷欄位資料是否為空白
//若欄位資料空白則呼叫msg副程式
if (empty($_REQUEST["Name"]))
{
msg("您忘記輸入大名啦!!");
}
else if(empty($_REQUEST["Email"]))
{
msg(!"您忘記輸入E-Mail啦!!");
}
else if(empty($_REQUEST["ID"]))
{
msg("您忘記填寫登入名稱啦!!");
}
else if(empty($_REQUEST["Password"]))
{
msg("您忘記填寫登入密碼啦!!");
}
else
{
//接收來自『加入會員』表單中的欄位資料
$Name = $_REQUEST["Name"];
$Email = $_REQUEST["Email"];
$ID = $_REQUEST["ID"];
$Password = $_REQUEST["Password"];
}[/code]

小誌 發表於 2011-4-22 02:42

當「If」判斷敘述驗證欄位資料內容為「Empty」,也就是說資料欄位內容是留白時,則呼叫「msg」副程式來產生一個錯誤訊息的網頁,「msg」副程式非常簡短,不過,呼叫「msg」副程式的同時,必須傳給「msg」副程式一個錯誤訊息字串參數,這個錯誤訊息字串參數將顯示在錯誤訊息的網頁中。

現在,我們來看看「msg」函數是如何來產生一個錯誤訊息的網頁:[code]<?
function msg($info)
{
?>
   <CENTER>
   <H2><Font Color=red><?=$info?><HR size="1" color="#FF0066">
   <FORM>
   <INPUT Type=Button Value="上一頁" OnClick="history.back();">
   </FORM>
   </CENTER>
   </font>
<?
exit();   
}
?>[/code]當「msg」函數被呼叫時,將輸出一段網頁HTML敘述(上列粗體字部分的區段),同時,「If」判斷敘述將呼叫「msg」副程式所傳來的錯誤訊息字串參數內容(info)加到網頁HTML敘述中顯示出來,然後執行「exit();」敘述終止程式的執行。

頁: [1]

麻辣家族討論版版為 麻辣學園 網站成員  由 昱得資訊工作室 © Since 1993 所提供