Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Pitanje u vezi klase

[es] :: PHP :: PHP za početnike :: Pitanje u vezi klase

[ Pregleda: 1328 | Odgovora: 2 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

BLACK_SWORD

Član broj: 212173
Poruke: 171
93.157.198.*

Sajt: www.artwebdizajn.com


+3 Profil

icon Pitanje u vezi klase26.07.2011. u 11:14 - pre 155 meseci
Pozdrav!

Kad pravim klasu za korisnike dali je bolje napraviti posebne klase za username, email itd.
Code:

class UserName
{
    private $maxLength = 15;
    private $minLength = 2;
    private $noSigns = '-=+*%#\[\]& \/"\';:.,<>()|{}~';

    public function __construct()
    {
    }

    public function maxLength($s)
    {
        if(strlen($s) > $this->maxLength)
            return true;
        else
            return false;
    }

    public function minLength($s)
    {
        if(strlen($s) < $this->minLength)
            return true;
        else
            return false;
    }

    public function valid($s)
    {
        if(preg_match("/[$this->noSigns]/", $s))
            return true;
        else
            return false;
    }
}

$_POST['username'] = 'fsdfss/ljsa"sss';

$a = new UserName();

if($a->valid($_POST['username']))
{
   echo 'Greška';
} else
{
   echo 'Nema greške';

}


ili je ovo bolje staviti sve u jednu klasu User.
 
Odgovor na temu

VladaSu

Član broj: 31634
Poruke: 1099
*.dynamic.isp.telekom.rs.



+218 Profil

icon Re: Pitanje u vezi klase26.07.2011. u 12:43 - pre 155 meseci
Ja bih pre napravio posebnu klasu za validaciju, imas vec gotovih, i napravio bih samo jednu metodu validate u klasi user i ne bih stavljao npr maxlength u varijablu.
[Ovu poruku je menjao VladaSu dana 14.06.2003. u 11:22 GMT+1]
 
Odgovor na temu

BLACK_SWORD

Član broj: 212173
Poruke: 171
93.157.198.*

Sajt: www.artwebdizajn.com


+3 Profil

icon Re: Pitanje u vezi klase28.07.2011. u 17:00 - pre 154 meseci
dali je vako dobro?

Code:

<?php

class validate
{
    public function __construct()
    {
    }

    public function validateUserName($UserName, $v = null)
    {
        $maxLength = 15;
        $minLength = 2;
        $noSign = '/[-=+*%#\[\]& \/"\';:.,<>()|{}~]/';

        switch($v)
        {
            case 'maxLength':
                return(strlen($UserName) > $maxLength);
                break;

            case 'minLength':
                return(strlen($UserName) > $minLength);
                break;

            case 'validUserName':
                return(preg_match($noSign, $UserName));
                break;

            default:
                return(preg_match($noSign, $UserName) or strlen($UserName) > $maxLength or strlen($UserName) < $minLength);
                break;
        }
    }

    public function validateEmail($email, $v = null)
    {
        $maxLength = 255;
        $validEmail = '/^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,6}$/i';

        switch($v)
        {
            case 'maxLength':
                return(strlen($email) > $maxLength);
                break;

            case 'validEmail':
                return(! preg_match($validEmail, $email));
                break;

            default:
                return(! preg_match($validEmail, $email) or strlen($email) > $maxLength);
                break;
        }
    }

    public function validateUserGender($gender, $v = null)
    {
        $male = 0;
        $female = 1;

        switch($v)
        {
            case 0:
                return($gender != $male);
                break;

            case 1:
                return($gender != $female);
                break;

            default:
                return(($gender != $male) and ($gender != $female));
                break;
        }
    }

    public function validateLanguage($language)
    {
        switch($language)
        {
            case 'ba': return true; break;
            case 'hr': return true; break;
            case 'rs': return true; break;
            case 'en': return true; break;
            default: return false; break;
        }
    }

    public function validateCountries($country)
    {
        switch($country)
        {
            case 'af': return true; break;
            case 'ax': return true; break;
            case 'al': return true; break;
            case 'dz': return true; break;
            case 'as': return true; break;
            case 'ad': return true; break;
            case 'ao': return true; break;
            case 'ai': return true; break;
            case 'aq': return true; break;
            case 'ag': return true; break;
            case 'rs': return true; break;
                                      // OVDJE DOLAZE OSTALE ZEMLJE
            case 'me': return true; break;
            default: return false; break;
        }
    }
}

?>

 
Odgovor na temu

[es] :: PHP :: PHP za početnike :: Pitanje u vezi klase

[ Pregleda: 1328 | Odgovora: 2 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.