Validation contains sorunu

Merhabalar. Validation kütüphanesinde contains rule kullanmaya çalışıyorum. Formdan gelen verileri net belirlemem gerekiyor. Dokümanda contains için "İçermesi istenen karakterler, virgülden sonra belirtilir" ibaresi var. "karakter ya da karakter grubunu içermelidir" ifadesi için;

contains'e çoklu ifade belirtme işlemini tamamlayamadım. Bunu bir kullanımı var mı?

Cevaplar (3)


Turan Karatuğ
Software Developer - Creator of TitanMVC
6 ay önce

Soruyu tam olarak anlayamadım. Biraz daha açabilir misiniz?
NegaXY
PHP Developer
4 ay önce

Cevap verdiğinizi geç gördüm.

doc/validation#dogrulama-kurallari url deki Validaton da contains örneğiniz üzerinden açıklayayım.

Validation::rule('field', 'label', 'contains,elma'); // ilgili alan 'elma' kelimesini içermelidir


Bu örneği SQL enum mantığı olarak algılıyorum. contains validation'ı Form select işlemi için uygulamayı düşünüyorum. Örneğin elma, armut, muz optionlarından biri seçilmeli. Kaynağa yapılan müdahale ile forma bunlardan başka data gelmesini engellemeyi planlıyorum.

Ancak contains çoklu kullanımını başaramadım ya da bu tek bir değer ile mi çalışıyor.
NegaXY
PHP Developer
4 ay önce

Tamam anladığım kadarıyla Validation contains rule multiple part yazılmamış. bunu Validation Lib de kendim yazdım. Değişikliği de buraya ekleyeyim.

System/Libs/Validation:

protected function contains($data, $part)
{
$parts = explode("+", $part);

if (in_array($data, $parts))
{
return true;
}else{
return false;
}
}


Bu değişiklik sonrası Contains rule şu şekilde kullanılır bir hale geldi:

Validation::rule('field', 'label', 'contains,elma+armut+muz');
Validation::data('field', 'çilek');

if (Validation::isValid())
echo 'Form verileri doğrulandı';
else
echo 'Form verileri doğrulanamadı';


elma, armut, muz değerlerinden biri varsa true, farklı bir değer gelmişse false olacak şekilde düzenlenmiş oldu.

Cevap Yazın


[code=php,css,sql]kod[/code] , [url=http:...com] , [img=imaj linki] , [color=renk_kodu]metin[/color]