Ich habe ein Formular, wo Benutzer die Namen und E-Mail-Adressen von Kollegen eingeben können. Sie müssen nichts eingeben. Wenn jedoch ein Name eingegeben wird, ist die E-Mail-Adresse erforderlich.Wie man ein Feld nur dann benötigt, wenn ein anderes Feld verwendet wird
<form>
1st name <input type="text" name="name_1" value"" />
1st email <input type="text" name="email_1" value"" />
2nd name <input type="text" name="name_2" value""/>
2nd email <input type="text" name="email_2" value""/>
</form>
Ich kann bereits bestimmte Felder macht erforderlich, um die Funktion unten. Ich denke, ich könnte eine if else-Anweisung verwenden, um zu überprüfen, ob der erste Name einen Wert hatte, und dann die erste E-Mail-Adresse eingeben. Das Formular enthält jedoch zwanzig mögliche Namen/E-Mail-Paare.
Was ich bin, ist Rat über die Art von Sache, die ich versuchen sollte, dies zu tun, anstatt eine vollständige Lösung. Ich schätze das eine vage Frage, aber ich bin sehr neu in PHP und habe Schwierigkeiten bei der Suche nach einer Lösung.
function check_required_fields($required_array) {
$field_errors = array();
foreach($required_array as $fieldname) {
if (!isset($_POST[$fieldname]) || (empty($_POST[$fieldname]) && !is_numeric($_POST[$fieldname]))) {
$field_errors[] = $fieldname;
}
}
return $field_errors;
}
Warum nicht auf der Client-Seite? Beim Absenden der Validierung mit Javascript/JQuery –
versuche ich PHP zu lernen und finde den besten Weg dazu, indem ich etwas tue. Allerdings kann ich auch ein wenig von jQuery lernen, danke für den Vorschlag, ich werde es versuchen. –