Funkcje PHP

Funkcje PHP

Sprawdzenie ile pozostało dni z czasu zapisanego w formacie uniksowym.



 $dzien = time()-86400;
 $tydzien = time()-604800;
 $miesiac = time()-2592000;
 $dwa_miesiac = time()-5184000;

 $zostalo_dni = ($tydzien - time()) / 86400;
 echo $zostalo_dni;

 $zostalo_tygodni = ($miesiac - time()) / 604800;
 echo $zostalo_tygodni;

$zostalo_miesiecy = ($dwa_miesiac - time()) / 2592000;
 echo $zostalo_miesiecy;

 ## zamiana czasu uniksowego na mysql ##
 $phptime=1415732293;
echo "
".$mysqltime = date("Y-m-d H:i:s", $phptime)."
";

 

.

Czyścimy opis ze znaczników html nie wszystkich,  sprawdzamy długość teksu i czyścimy przed zapisem do bazy danych mysql


 function czysc_opis($post){
   ## Sprawdzamy czy teks jest krótszy niż 150 znaków ##
      if(strlen($post) < 150){
   ## pozwalamy na używanie takich znaczników "

" ## $post = strip_tags($post, "

"); ## filtrujemy dane przed zapisem do bazy danych mysql ## return mysql_real_escape_string($post); }else{ return "Twój opis jest za długi !"; } }

Czyścimy numer telefonu pozostawiając możliwość użycia przerwy pomiędzy liczbami i znaku myślnika. 


function czysctel($tel) {

 ## czyścimy numer telefonu i dopszczamy używanie takich symboli + – i przerwa pomiędzy ## 
## znakami taki format 111 111 111 lub 111-111-111 +48 52 itd. są dozwolone ##

 return preg_match('/^[0-9\+\-\ ]{8,13}$/', $tel);
 }

Czyścimy numer nip i zmuszamy do prawidłowego podania go.

Poprawny format  000 000 00 00 i 000-000-00-00 lub 107-00-00-067

http://pl.wikipedia.org/wiki/NIP



function czyscnip($nip) {
 if(!empty($nip)) {
 $waga = array(6, 5, 7, 2, 3, 4, 5, 6, 7);
 $nip = preg_replace(array('/\-/','/\ /'), '', $nip);
 if (strlen((int)$nip) == 10) {
 $suma = 0;
 for($i = 0; $i < count($waga); $i++)
 $suma += $nip[$i] * $waga [$i];
 if(($suma % 11) == $nip[9]){ 
return true; 
} } }
 return false;
 }

Funkcja php odpowiedzialna za czyszczenie (walidacje) kodu pocztowego


   function czysckodpoczt($kodpocztowy){
    if(preg_match('/^[0-9\-]{5,7}$/', $kodpocztowy)) { 
               return $kodpocztowy; 
     }else{
   return "Niepoprawny kod";
   } 
 }

Lub bardziej dokładny z zabezpieczeniem przed Cross-site scripting (XSS)


function czysckodpoczt1($kodpocztowy){
    if(preg_match('/^[0-9]{2}-[0-9]{3}$/', strip_tags($kodpocztowy))) { 
       return $kodpocztowy; 
     }else{
     return "Niepoprawny kod";
   } 
 }

Kolejna funkcja, która może nam się przydać podczas codziennej pracy z formularzami php filtrująca email, nie zapominajmy tutaj stosując funkcję php filter_var() o możliwości przeprowadzenia ataku na za pomocą Cross-site scripting (XSS)


function czyscemail($email){
    if(!filter_var(strip_tags($email), FILTER_VALIDATE_EMAIL) === false) { 
       return $email; 
     }else{
   return "Niepoprawny email";
     }
}


Oraz: Funkcja która pozwala zapisać sam adres www bez protokołu np. http://


## także zabezpieczona przed Cross-site scripting (XSS)  
  function czyscewww($www){
    if($url = parse_url(strip_tags($www))){
    if(!$url["scheme"]){
      return $url['path'];
        }else{
               return $url['host'];
     }
     }else{
   return "Niepoprawny www";
   }
   }

albo


$www = 'http://www.oskarś.examplę.pl';

## FILTER_SANITIZE_STRING Zabezpieczenie przed Cross-site scripting (XSS)  drugia flaga walidacja url
 function czyscewww1($www){
    if($www = filter_var($www, FILTER_SANITIZE_STRING, FILTER_VALIDATE_URL)){ 
       return $www; 
     }else{
     return "Niepoprawny www";
   } 
}

albo, chyba najciekawsza z tego zestawu, dlatego że obsługuje polskie znaki diakratyczne i nie trzeba się martwić o ataki Cross-site scripting (XSS) choć wystkie gdzieś mają swoje zastosowanie, obsługuje także subdomeny.


$www = 'http://www.oskarś.examplę.pl';
$www0  = 'oskarś.examplę.pl';
 $www1 = 'www.example.pl';
 $www2 = 'www.oskarś.examplę.pl';
$www3  = 'oskarś.examplę.pl';
$www4  = 'examplę.pl';
$www5  = ' http://www.examplę.pl';


## dla polskich domen ze znakami diakratycznymi i zabezpieczeniem przed Cross-site scripting (XSS)
function czyscewww2($www){
   if(preg_match('%^((http(s)?://)|([a-z])){2}+([a-ząęćłńóśźż0-9-].?)+([a-z]){2}?$%i', $www, $math)){
    return $math[0];
     }else{
   return "Niepoprawny www";
   }
   }

 

Używamy cookies i podobnych technologii m.in. w celach: świadczenia usług, reklamy, statystyk. Korzystanie z witryny bez zmiany ustawień Twojej przeglądarki oznacza, że będą one umieszczane w Twoim urządzeniu końcowym. Pamiętaj, że zawsze możesz zmienić te ustawienia. To find out more about the cookies we use and how to delete them, see our privacy policy.

I accept cookies from this site.

EU Cookie Directive Module Information