1 sayfadan 1. sayfa

Kayıtta Zorunlu alana "sıfır" şartı

İletiTarih: 06.04.2007, 00:15
tamly
arkadaşlar ben bir üniversitenin forum sitesini yönetiyorum. kayıt bölümünde okul numarası var ancak saçma sapan bişey yazıp kayıt olmalarını istemiyorum. okul numaralarımız 0 ile başlıyor ve toplam 10 haneden oluşuyor. sadece okul numarası bölümüne "aavavavababa" diye saçma sağan bişey girince "lütfen geçerli okul nosu girin" diye uyarı vermesini istiyorum. bu koşulları nasıl sağlayabilirim. biraz php bilgim var ancak nereye ne şekilde bunu yapabilirim? veya bunun için herhangibir mod varmıdır?

Cvp: Kayıtta Zorunlu alana "sıfır" şartı

İletiTarih: 06.04.2007, 00:58
butterflyT
Anahtar kelimelerin : php field validation

includes/functions_validate.php dosyasını incele olayı çözebilirsin.

Ben de php sözdizimini bilmiyorum ama programlama bildiğim için anlaması çok zor değil.

Misal :

[syntax="php"]// ICQ number has to be only numbers.
if (!preg_match('/^[0-9]+$/', $icq))
{
$icq = '';
}[/syntax] Bu kod ile yazar ICQ alanına sadece sayı girilmesini istiyor. preg_match() ne işe yarıyor bilmiyorum ama koddan anlaşılıyor. İlk değer istenen şey, ikincisi ise değerlerin arandığı değişken. Eğer doğru ise fonksiyon 1, true değerine geri dönüyor, eğer yanlış ise 0 false değerine geri dönüyor. Geri dönüş değerini nerden tahmin ediyorum ! değilden. Fonskiyon yanlış, false 0 dönerse !0 1 değerini üreteceğinden if yapısına girer ve $icq değişkenine boş bir değer atar. Yani ziyaretçi buraya "blabla" yazsa bile formu kayıt ettikten sonra ICQ alanı boş kalır.

Sen bir de hatalı değer girildiğinde hemen uyarı versin istiyorsun. O zaman email validation kısmını incele.

[syntax="php"]$match_email = str_replace('*', '.*?', $row['ban_email']);
if (preg_match('/^' . $match_email . '$/is', $email))
{
$db->sql_freeresult($result);
return array('error' => true, 'error_msg' => $lang['Email_banned']);
}[/syntax]Bak burada return array ile ekrana hata mesajı yazdırıyor.

1- Alanı zorunlu yap.
2- ICQ daki gibi sadace rakam iste.
3- Yanlış giriş yapılırsa error = true yap.

Kolay gelsin.