Ich möchte benutzerdefinierte Validierungsregel in CodeIgniter 3 erstellen, aber ich möchte gebuchtes Array validieren (keine Zeichenfolge). In CodeIgniter-Dokumenten wurde Array auch unterstützt.Siehe Array in benutzerdefinierten Formular Validierungsregel in coderigniter
HTML:
<select name="bonus[]" class="form-control"> ... </select>
<select name="bonus[]" class="form-control"> ... </select>
<select name="bonus[]" class="form-control"> ... </select>
VALIDATION:
$this->form_validation->set_rules("bonus[]", "Bonuses", "all_unique");
Gültigkeitsregel all_unique
public function all_unique($array)
{
$this->CI->form_validation->set_message('all_unique', '%s are not unique.');
if(count(array_unique($array))<count($array))
{
// Array has duplicates
return FALSE;
}
else
{
// Array does not have duplicates
return TRUE;
}
}
Im Allgemeinen ich, wenn ausgewählte Boni überprüfen möchten nicht duplizieren. (Die Anzahl der ausgewählten Bonusfelder kann variieren.)
Das Problem dabei ist, dass der an all_unique Validierungsmethode übergebene Wert als String nicht als Array übergeben wird, sondern der Wert des ersten Bonus [] -Feldes. Wie kann ich das Sende-Bonus-Array [] validieren?
ich nicht erwähne dies, zu erhalten zu nennen. Ich überschreibe die ValidationForm-Bibliothek. In diesem Fall denke ich, dass es kein Problem ist. – energetyk
Wie überschreiben Sie es ??? und Validierungsregel ist 'is_unique' nicht' all_unique' – Saty
Ich meine, ich erstelle eigene MY_Form_validation.php Datei in Anwendung/Bibliotheken. Und meine benutzerdefinierten Validierungsregeln sind da. – energetyk