2014-07-20 37 views
-2

嗨我很難用數組名稱對多個字段進行驗證。我想先做php驗證而不是jquery或javascript。對數組名稱的多個文本字段進行PHP驗證

我的代碼更新數據庫中的多個數據,如果字段不是空的工作正常。 下面是我用於驗證的更新代碼,我無法使其工作。

if (isset($_POST['savechange'])){ 

$name =$_POST ['name']; 
$lastname =$_POST ['lastname']; 
$email =$_POST ['email']; 
$id = $_POST ['id']; 
$pid = count(array_values ($id)); 

for($i=0;$i<($pid);$i++){ 

if (empty ($name[$i])) { 
echo "Error: There is/are name field(s) that left empty"; 
} 

} 
} 

此代碼只是回顯錯誤*數字的空字段名稱。例如,如果有3個爲空的字段,則錯誤將被回送3次。

如果我做了下面的代碼,即使我在索引頁上將字段名稱從名稱[$ i]更改爲名稱[],或者反過來也不會出現錯誤。 我不確定有什麼問題,請幫忙!

if (empty ($name)) { 
foreach($name as $x=>$x_value) { 
echo "Field is empty for " . $x; 
echo "<br>"; 
} 
} 

或本

if (empty ($name)) { 

echo "There is/are name field that left empty"; 
} 

我想只是想顯示顯示1個錯誤,則是空的或無效的字段數。

+0

你原來的做法很好。將結果存儲在布爾值中。循環後顯示。 –

+0

嗨Karoly,謝謝你的回答..你能給我一個關於如何做的代碼片段嗎?提前致謝.. – MarlZ15199

回答

0

'無效'不僅僅意味着空。價值無效的原因有很多。因此,逐個驗證每個值並同時計算無效值的數量。最終,在驗證完整數據後,您將能夠在數字數據旁邊回顯您的錯誤。