フォームの必須フィールドをチェックする小さな関数を作成しました。空ではありません。この関数は2つの引数を受け入れます。1つ目は$_POSTスーパーグローバルからのすべての値を持つ配列です。2つ目は、入力する必須フィールド配列です。
見てください:
public $errors = array();
public function validate_fields($fields_array, $required_fields)
{
foreach ($required_fields as $key => $value)
{
if (array_key_exists($key, $fields_array))
{
# If key exists in $fields_array
# check that the key value inside $fields_array is set & isn't empty
# if it's empty, populate with an error
if(empty($fields_array[$key][$value]))
{
$this->errors[] = "{$key} is empty but in fields_array";
}
}
else
{
# Key does not exists in $fields_array
# Did someone temper with my html ?
$this->errors[] = "{$key} is not in fields_array";
}
}
return (empty($this->errors)) ? true : false;
}
私が抱えている問題は、「if(empty($ fields_array [$ key] [$ value]))」ステートメントに関連しているようです。私の目標は、$required_fieldsキーに基づいて$fields_arrayキーの値が空でないことを確認することです。私が使用しているステートメントはオフになっていると確信しています。私はphpを初めて使用するので、もっとうまく書けると思うものを見つけたら、私に知らせてください。ヘルプに感謝します。