PHP 欄位檢查避免少填資料

首先找到插入紀錄的語法(ABC為連線的資料庫名稱)

 

mysql_select_db($database_ABC, $ABC);
$Result1 = mysql_query($insertSQL, $ABC) or die(mysql_error());

 

以下原始碼要放在插入紀錄前,用來判斷如果有欄位是空的不要插入紀錄而是回到原本頁面,並回填已填的資料

if ($_POST['Email']==NULL or $_POST['pwd']==NULL or $_POST['NameID']==NULL or $_POST['Phone']==NULL or $_POST['Address']==NULL) {
$insertGoTo = "?masg=123&Email=".$_POST['Email']."&pwd=".$_POST['pwd']."&Name=".$_POST['Name']."&NameID=".$_POST['NameID']."&Phone=".$_POST['Phone']."&Address=".$_POST['Address'];
header(sprintf("Location: %s", $insertGoTo));
}

藍色的字為欄位名稱

紅色的字為回傳的訊息代號,可以隨便取,是用來判別接收到此訊息時該秀什麼訊息文字出來。

$insertGoTo是用來存轉址用的字串,因為是回到原本的頁面,所以沒有寫網頁路徑,"?"後方的一串傳遞字串是為了回到原本頁面後可以回填欄位,避免會員註冊時因少填了一個欄位在轉頁後資料被清空。

 

以下原始碼也要放在插入記錄前,用來判斷如果全部欄位都有資料要插入紀錄

if ($_POST['Email']!=NULL and $_POST['pwd']!=NULL and $_POST['NameID']!=NULL and $_POST['Phone']!=NULL and $_POST['Address']!=NULL) {
......
}

藍色的字為欄位名稱

紅色的字為插入紀錄的程式碼

 

以下原始碼是示範表單欄位的寫法

<label for="Email"></label>
<input name="Email" type="text" id="Email" value="<?php echo $_GET['Email']; ?>" size="50" />
<?php if ($_GET['masg']==123 and $_GET['Email']==NULL) echo "您有資料未填喔"; ?>

藍色的字為欄位名稱

紅色的字為回傳的訊息代號,可以隨便取,用來判別接收到此訊息時該秀什麼訊息文字出來。