Za začetek ustvarite datoteko index.php (lahko jih uporabite tudi v kateremkoli dokumentu).
|
|||||
![]()
Filtri so v PHP-ju že privzeto vključeni, tako da ni potrebno nalagati posebnih zbirk kod.
|
|||||
|
|||||
![]()
Za preverjanje vrednosti spremenljivk se uporabljajo naslednji filtri:
- filter_var() filtrira eno spremenljivko z določenim filtrom - filter_var_array() filtrira več spremenljivk, z enim ali večimi filtri - filter_input se uporablja za filtriranje enega samega vnosa - filter_input_array pridobi več vnosnih spremenljivk in jih filtrira z enim ali večimi filtri
|
|||||
|
|||||
![]()
Funkcije filtrov (filtri) pa so naslednji:
- FILTER_CALLBACK poliče uporabniško določeno funkcijo za filtriranje - FILTER_SANITIZE_STRING kodira posebne znake (obvezno za vnašanje podatkov v MySQL bazo) - FILTER_SANITIZE_STRIPPED ima drugo ime kot zgornji filter - FILTER_SANITIZE_ENCODED kodira URL naslov, po želji kodira posebne znake - FILTER_SANITIZE_SPECIAL_CHARS kodira znake ' " < > & z ASCII vrednostjo - FILTER_SANITIZE_EMAIL odstrani vse znake z izjemo črk, številk in ! # $ % & ' * + - / ? ^ _ ` { | } ~ @ . [ ] - FILTER_SANITIZE_URL odstrani vse znake z izjemo črk, številk in $ - _ . + ! * ' ( ) , { } | \ \ ^ ~ [ ] ` < > # % " ; / ? : @ & = - FILTER_SANITIZE_NUMBER_INT odstrani vse znake z izjemo številk in + in - - FILTER_SANITIZE_NUMBER_FLOAT odstrani vse znake z izjemo številk, + - in po želji . , e E - FILTER_SANITIZE_MAGIC_QUOTES uporabi funkcijo addslashes() - FILTER_UNSAFE_RAW ne naredi nič, po želji kodira posebne znake - FILTER_VALIDATE_INT potrdi neko spremenljivko kot integer (spremenljivka, ki vsebuje le števila), po želji tudi v določenem območju - FILTER_VALIDATE_BOOLEAN vrne vrednost TRUE za 1, true, on in yes, ter FALSE za 0, false, off, no in prazno vrednost, drugače odvrne NULL - FILTER_VALIDATE_FLOAT preveri, če je vrednost v formatu float - FILTER_VALIDATE_REGEXP preveri vrednost proti regexp-ju - FILTER_VALIDATE_URL preveri, če je spremenljivka pravilen URL naslov - FILTER_VALIDATE_EMAIL preveri, če je vrdnost pravilen e-poštni naslov - FILTER_VALIDATE_IP preveri, če je vrednost pravilen IP naslov, po želji v določenem rangu ter ali je verzija IPv4 ali IPv6 V kolikor česa niste razumeli, vam priporočam, da nam pišete na forum, oz. še enkrat preberete ta korak.
|
|||||
|
|||||
![]()
V tem primeru, vam bom prikazal, kako se uporabi filter FILTER_VALIDATE_INT.
V dokument najprej vstavite znake za PHP kodo (<?php in ?>), ter spremenljivki a določite vrednost, ki naj bo besedilo.
|
|||||
|
|
|||||
![]()
Nato sestavite IF stavek, v katerem bo PHP preveril, če je spremenljivka res v integer formatu.
IF stavek je sestavljen tako: if(filter_var(SPREMENLJIVKA, FILTER)) ... if(filter_var($a, FILTER_VALIDATE_INT)){ //V tem primeru je spremenljivka v integer formatu echo("Spremenljivka a je v integer formatu"); }
|
|||||
|
|||||
![]()
V zgornjem primeru, program ne bo odvrnil ničesar, saj nismo v kodi napisali, kaj naj se zgodi, v primeru, da spremenljiva ni v integer formatu.
To popravimo oz. izpopolnimo s tem, da stavku IF dodamo še else. else{ //V tem primeru spremenljivka ni v integer formatu echo("Spremenljivka a ni v integer formatu"); } V tem primeru bo program odvrnil, da spremenljivka ni v integer formatu. Zdaj spremenite a v neko številčno vrednost, program pa bi vam moral odvrniti pritrdilen odgovor.
|
|||||
|
|||||
![]()
Če želite za preverjanje integer-ja določiti neko območje dovoljene številke, morate ustvariti array in ga vključiti v IF stavek.
Array ustvarite tako: $obmocje=array( "options"=>array( "min_range"=>0, "max_range"=>45 ) ); Pri čemer lahko spremenite le ime spremenljivke (v tem primeru obmocje) in vrednosti najmanjše in največje številke. To v IF stavek vstavite le z dodajanjem imena spremenljivke za določen filter: if(filter_var($a, FILTER_VALIDATE_INT, $obmocje)){ Program vam bo izpisal da je spremenljivka a integer, če je to številka, ki ne presega oz. ni manjša od določenega območja. To je bilo za danes vse, če pa vas zanima kaj več oz. česa niste razumeli, pa nam pišite na forum.
|
|||||