Tema: PHP Fontele
Pogledajte određenu poruku
Staro 15. 01. 2011.   #1
webarto
expert
Grand Master
 
Avatar webarto
 
Datum učlanjenja: 11.04.2010
Poruke: 998
Hvala: 141
959 "Hvala" u 153 poruka
webarto is on a distinguished roadwebarto is on a distinguished roadwebarto is on a distinguished roadwebarto is on a distinguished roadwebarto is on a distinguished roadwebarto is on a distinguished roadwebarto is on a distinguished roadwebarto is on a distinguished road
Default PHP Fontele

Daleko od bulletproof ali valjda može da posluži... Meni dojadilo kad vidim kako unose brojeve telefona iako format piše boldiran slovima.

PHP kôd:
function fontele($broj){
    
    
$broj preg_replace("#[^0-9]#"""$broj);
    if(
substr($broj02) == "00"$broj substr_replace($broj""02);

    
$duzina["drzava"] = 3;
    
$duzina["regija"] = 2;
    
$duzina["broj"] = array(6,7);
    
    
$vrijednosti["drzava"] = array("381""385""387");
    
$vrijednosti["regija"] = array();
    
$vrijednosti["broj"] = array();
    
    
$telefon["drzava"] = substr($broj0$duzina["drzava"]);
    
$telefon["regija"] = substr($broj$duzina["drzava"], $duzina["regija"]);
    
$telefon["broj"] = substr($broj5strlen($broj) - ($duzina["drzava"] + $duzina["regija"]));
    
    if(!empty(
$vrijednosti["drzava"])){
        if(!
in_array($telefon["drzava"], $vrijednosti["drzava"])) $greska .= "Pozivni broj za državu nije dozvoljen. ";
    }
    if(!empty(
$vrijednosti["regija"])){
        if(!
in_array($telefon["regija"], $vrijednosti["regija"])) $greska .= "Pozivni broj za regiju nije dozvoljen. ";
    }
    if(!empty(
$vrijednosti["broj"])){
        if(!
in_array($telefon["broj"], $vrijednosti["broj"])) $greska .= "Broj telefona nije dozvoljen. ";
    }
    
    if(!
in_array(strlen($telefon["broj"]), $duzina["broj"])) $greska .= "Broj telefona ne odgovara formatu. ";
    
    
$greska trim($greska);
    
    if(empty(
$greska)){
        echo 
$telefon["drzava"].$telefon["regija"].$telefon["broj"];
    }else{
        echo 
$greska;
    }
    

Citat:
fontele("00386 - 61 / 058-50505");
fontele("0381-61/0580505");
fontele("38661058505");
fontele("+38111058505");
fontele("0038761058505");
Citat:
Pozivni broj za državu nije dozvoljen. Broj telefona ne odgovara formatu.
Pozivni broj za državu nije dozvoljen. Broj telefona ne odgovara formatu.
Pozivni broj za državu nije dozvoljen.
38111058505
38761058505
webarto je offline   Odgovorite uz citat
"Hvala" webarto za poruku: