Dizideki bir form doğrulama en etkili yolu?

0 Cevap php

Aşağıdaki şekilde doğrulanan bir formu vardır:

//Clear all variables
$formCheck = '';
$rep = '';
$name = '';
$department = '';
$location = '';
$email = '';
$phone = '';
$type = '';
$drink = '';
$notes = '';
$lastVisited = '';
$nextVisit = '';

$clean_formCheck = '';
$clean_rep = '';
$clean_name = '';
$clean_department = '';
$clean_location = '';
$clean_email = '';
$clean_phone = '';
$clean_type = '';
$clean_drink = '';
$clean_notes = '';
$clean_lastVisited = '';
$clean_nextVisit = '';

function validateRep($rep){
...some code...
}

$formCheck = $_POST["formCheck"];
$rep = $_POST["rep"];
$name = $_POST["name"];
$department = $_POST["department"];
$location = $_POST["location"];
$email = $_POST["email"];
$phone = $_POST["phone"];
$type = $_POST["type"];
$drink = $_POST["drink"];
$notes = $_POST["notes"];
$lastVisited = $_POST["lastVisited"];
$nextVisit = $_POST["nextVisit"];

if (validateRep($rep)){
    $clean_rep = $rep;
}else{
    echo "Invalid Rep";
    exit();
}
//.....and so on......

Yerine bireysel değişken bir bir dizi kullanarak doğrulamak için daha verimli / temiz olacağını merak ediyordum? Eğer öyleyse dizinin döngü ile mümkün olacağını, nasıl ben bu konuda gitmek ve nasıl farklı doğrulama fonksiyonları (Ben her alanı doğrulamak için ayrı bir işlevi var şu anda örneğin) bir bütün yazmak istiyorsunuz? i deneme oldu ve şimdiye kadar bu ben ne var:

$unclean['formCheck'] = $_POST["formCheck"];
$unclean['rep'] = $_POST["rep"];
$unclean['name'] = $_POST["name"];
$unclean['department'] = $_POST["department"];
$unclean['location'] = $_POST["location"];
$unclean['email'] = $_POST["email"];
$unclean['phone'] = $_POST["phone"];
$unclean['type'] = $_POST["type"];
$unclean['drink'] = $_POST["drink"];
$unclean['notes'] = $_POST["notes"];
$unclean['lastVisited'] = $_POST["lastVisited"];
$unclean['nextVisit'] = $_POST["nextVisit"];


$clean = array(
        'rep', 'name', 'department', 'location', 'email', 'phone', 'type', 'drink', 'lastVisited', 'nextVisit',
);

ama ben burada devam etmek nasıl emin değilim.

0 Cevap