Documente Academic
Documente Profesional
Documente Cultură
PHP4 PDF
PHP4 PDF
PHP cookie
Cookie sunt folosite pentru a identifica un user
Este un fișier mic pe care serverul îl salvează pe calculatorul user-ului
Când este cerută o pagină va fi trimis și cookie-ul salvat anterior
Cu PHP se pot crea și obține valorile cookie
Creare cu setcookie() – trebuie să apară înaintea tag-ului <html>
<?php
setcookie("user", "Alex Porter", time()+3600);
?>
<html> <body>
</body> </html>
Stergerea unui cookie – trebuie să ne asigurăm că data și ora la care expiră este anterioară datei
și orei curente
<?php
// se stabilete data la o ora in urma
setcookie("user", "", time()-3600);
?>
PHP - sesiuni
O variabilă de sesiune PHP este folosită pentru a stoca informații sau a modifica setări
pentru o sesiune utilizator
Variabilele sesiune stochează informație despre un singur utilizator și sunt disponibile
tuturor paginilor aplicației
După părăsirea website-ului variabilele sesiune sunt șterse
Pentru stocarea permanentă a informațiilor e nevoie de o bază de date.
Sesiunile funcționează prin crearea unui ID unic (UID) pentru fiecare vizitator al
aplicației web
Variabilele sunt stocate pe baza acestui UID
UID-ul este salvat într-un cookie sau este propagat prin URL
<?php
//obtinerea datelor de sesiune
echo "Page views=". $_SESSION['views']; ?>
</body> </html>
PHP - email
Se pot trimite email-uri direct dintr-un script cu funcția mail()
Sintaxa: mail(to,subject,message,headers,parameters)
Pentru ca să funcționeze e nevoie de un sistem de email instalat
<?php
$to = "someone@example.com";
$subject = "Test mail";
$message = "Hello! This is a simple email message.";
$from = "someonelse@example.com";
$headers = "From: $from";
mail($to,$subject,$message,$headers);
echo "Mail Sent.";
?>
PHP - filtrare
Filtrele PHP sunt folosite pentru a valida datele care vin din surse nesigure, de ex. date
introduse de user
Testarea, filtrarea și validarea datelor utilizator reprezintă o parte importantă a oricărei
aplicații web
Orice aplicație web se bazează pe date introduse de user așa că e important să ne
asigurăm că aplicațiile primesc date corecte
Filtrarea datelor de intrare reprezintă una din cele mai importante probleme de securitate
a aplicațiilor
Date externe:
Date introduse în formulare
Cookie
Date de la webservice-uri
Variabile server
Rezultate ale interogărilor bazelor de date
Funcții pentru filtrare:
o filter_var() – filtrează o singură variabilă cu un filtru specificat
o filter_var_array() – filtrează mai multe variabile cu același filtru sau cu filtre
diferite
o filter_input – obține o variabilă de intrare și o filtrează
o filter_input_array – obține mai multe variabile de intrare și le filtrează cu
același filtru sau cu filtre diferite
<?php
$int = 123;
if(!filter_var($int, FILTER_VALIDATE_INT)) {
echo("Integer is not valid");
}
else {
echo("Integer is valid");
}
?>
PHP - filtrare
Există două tipuri de filtre:
Filtre de validare
Folosite pentru a validate datele introduse
Reguli de formare stricte (URL, email, IP)
Return tipul sau false (la eșec)
Filtre de curățare (sanitizing)
Permit sau interzic anumite caractere în stringuri
Nu sunt reguli pentru formatul datelor
Întotdeauna întorc string-uri
Opțiuni și indicatori (flag)
mai multe opțiuni filtrelor
<?php
$var=300;
$int_options = array( "options"=>array ( "min_range"=>0, "max_range"=>256 )
);
if(!filter_var($var, FILTER_VALIDATE_INT, $int_options)) { echo("Integer
is not valid");
}
else {
echo("Integer is valid");
}
?>
Validare datelor de intrare
<?php
if(!filter_has_var(INPUT_GET, "email")) {
echo("Input type does not exist");
} else {
if (!filter_input(INPUT_GET, "email", FILTER_VALIDATE_EMAIL)) {
echo "E-Mail is not valid";
}else { echo "E-Mail is valid"; }
}
?>
<?php
if(!filter_has_var(INPUT_POST, "url")) {
echo("Input type does not exist");
} else {
$url = filter_input(INPUT_POST, "url", FILTER_SANITIZE_URL);
}
?>