我正在从表单向php脚本提交大量数据,我想要一种有效的方法来检查是否所有数据都已正确提交。
<?php
$Name = $_POST['Name'];
$ID = $_POST['ID'];
$Submit = $_POST['submit'];
$Reset = $_POST['reset'];
$Topic_1 = $_POST['1'];
$Topic_2 = $_POST['2'];
$Topic_3 = $_POST['3'];
$Topic_4 = $_POST['4'];
$Topic_5 = $_POST['5'];
$Topic_6 = $_POST['6'];
$Topic_7 = $_POST['7'];
$Topic_8 = $_POST['8'];
$Topic_9 = $_POST['9'];
$Topic_10 = $_POST['10'];
$Topic_11 = $_POST['11'];
$Topic_12 = $_POST['12'];
$Topic_13 = $_POST['13'];
$Topic_14 = $_POST['14'];
$Topic_15 = $_POST['15'];
答案 0 :(得分:5)
$fields_names = array_merge(array(('Name','ID','submit')) , range(1,15)); /// instead of manually setting the numbered variables , used range function / @Fred-ii-
foreach($fields_names as $key)
{
if(empty($_POST[$key]) && $_POST[$key] != 0) // Making sure it's not 0 / @deceze
{
$error = true;
echo $key . ' is not set';
}
}
if(!$error)
{
//Anything is set.
}
<强>注意强>
我不确定检查值是否不是empty
就足够了。
考虑添加更多验证规则。
答案 1 :(得分:1)
使用foreach
循环:
if (!empty($_POST)) {
foreach ($_POST as $value) {
if (isset($value)) {
# variable set
}
}
}
答案 2 :(得分:0)
只需使用
foreach($_POST)
{
//test
}
如果你还需要数组键,请查看array_keys的功能。 您将获得每个键的数组。
应该这样做:
$array_is_empty = false
foreach (array_key($_POST) as $x){
if(empty($_POST[$x]))
$array_is_empty = true
}
抱歉没时间测试
问候 马丁