Documente Academic
Documente Profesional
Documente Cultură
Eugeniu Gârlă
dr.,
conf. univ.,
e-mail: eugeniugarla@yahoo.com
Chișinău 2021
Ce este acest Ghid?
Acesta ghid este un curs de
inițiere în WEB Development
folosind limbajul PHP. Ghidul oferă
informații complete ce pot fi folosite
de oricine dorește să invețe și să
dezvolte aplicații web, utilizând PHP.
Ghidul cuprinde noțiuni legate de
limbajul PHP, explicații, exemple
practice și acoperă întregul ciclu de
invățare. Astfel, ghidul reprezintă o
resursă completâ în invațarea
limbajului PHP. Parcurgând acest curs
veți putea dobândi noțiunile necesare
înțelegerii și creării scripturilor PHP de
orice nivel de complexitate.
Structura Ghidului
Acest ghid cuprinde mai multe lecții,
deseori descrise sub formă de
cuvinte-cheie, grupate (2 variante:
de 15 și 10 respectiv) în funcție de
dificultate:
▪ lecții introductive în care se explică
ce este și cum functionează PHP și
în general POO
▪ lecții despre elementele de bază
ale limbajului PHP
▪ lecții despre facilitățile avansate ale
limbajului PHP plus SGBD MySQL
▪ aplicații practice mai complexe cu
We Builder
▪ informații adiționale, care pot fi
utile oricarui dezvoltator web
1.Programarea
1.Programarea
XAMPP Orientata XAMPP
Orientata Obiect
Obiect
2.OBIECT - 2.INTRODUCE
NONOBIECT RE IN PHP
3.INTRODUCER
3.COD IN PHP WeBuilder
E in PHP
4.INTRODUCER 4.PROGRAMM
E in PHP 1 ING IN PHP
5.PROGRAMM
5.COD IN PHP WeBuilder
ING IN PHP 1
6.PROGRAMMIN
6.MYSQL PHPMyAdmin
G IN PHP
PHPMySQL/
7.PROGRAMMIN
7.MYSQL 1 QPphpconnect
G IN PHP 1
DB.php
8.SITE 1 IN QPindex1.BDM
8.MYSQL PHPMyAdmin
PHP YSQL.php
PHPMyAdmin/
9.SITE 2 IN QPindex4.busi
9.MYSQL 1 QPphpconnect
PHP ness.php
DB.php
10.WEB PAGE IN 10.RECAPITUL
HTML + CSS
PHP ARE
11.SITE 1 IN
QPindex1.BDM
PHP/
YSQL.php
verificareXAMPP
12.SITE 2 IN QPindex2.navig
PHP/verde+flori ator.php
13.SITE 3 IN QPindex3.cenz
PHP/cenzurare urare.php
14.SITE 4 IN QPindex4.busin
PHP/Bootstrap ess.php
15.SITE 5 IN QPindex5.frame
PHP/CursValutar work.php
Lecția 1
V.II.SITE DINAMIC:
Instrumentele minime de care aveţi
nevoie pentru a realiza documente HTML
sunt, în esenţă, următoarele: un editor de
text, cu ajutorul căruia să scrieţi
documentul, un browser, prin intermediul
căruia să vizualizaţi aspectul şi conţinutul
documentului, un editor grafic cu care să
prelucraţi imaginile pe care le veţi
introduce în pagină şi o conexiune la
Internet.
Corelația Site <=> Page WEB:
site-ul se încarcă de fiecare dată, pagina
WEB - nu;
site static: doar HTML+CSS;
site dinamic: BD + LP + editor/GUI/
altceva, interface, etc.;
caracteristici site: tipologie, tematică,
poze, animații, desenare-GUI, design,
etc.;
proiectare site - software:
frontend - ce vede utilizatorul WEB
Page, ex: limbaj încorporat;
backend - software pentru proiectare -
limbaj server, ex: DOM - HTML+CSS
încorporat;
fullstack -ambele, etc.
V.IV.IDLE + REDACTOR:
V.V.FRAMEWORK - TOP 5
PHP: xampp, Laravel
Laravel este un MVC PHP framework.
Laravel a devenit cel mai popular
framework PHP gratuit, open-source din
lume, deoarece poate trata aplicații web
complexe în siguranță, într-un ritm
considerabil mai rapid decât alte
framework-uri. Laravel simplifică
procesul de dezvoltare prin ușurarea
sarcinilor obișnuite, cum ar fi rutarea,
sesiunile, memorarea în cache și
autentificarea.
JavaScript: javascript-node, javascript-
angular;
Python: django-python, tkinter-python,
pandas-python, data science-python,
etc;
V. V I I I . S T R U C T U R A C U R S U L U I D E
PROGRAMARE WEB
nivel I
1.Modul de funcționare a tehnologiilor
client-server și particularitățile fiecareia
2.Baze de date
-Prezentarea modulului ca interfața grafică
de lucru cu bazele de date
-Crearea unei baze de date relaționale
-Inserarea, actualizarea, extragerea și
stergerea datelor prin interogări
-Indecsi, chei primare și chei străine
-Filtrarea datelor prin cautări avansate,
funcții de prelucrare a datelor
nivel II
1.Introducere în programarea obiect-
orientată
-crearea unei clase și definirea proprietăților
și metodelor aferente
-instanțierea obiectelor; reutilizarea codului
-extinderea claselor prin moștenire
-definirea metodelor și proprietatilor publice,
private sau protejate
2.Limbajul WEB
-menținerea activitatii utilizatorului și
stocarea de informații
-tehnici de detecție și filtrare in funcție de
browser sau IP
-programarea obiect-orientată
-prezentarea celor mai frecvente modele
pentru aplicații web
-integrarea bazelor de date în abordarea
orientată pe obiecte
-protejarea împotriva atacurilor
-prelucrarea fișierelor XML și integrarea lor
în aplicația web
V.IX.STRUCTURA CURSULUI DE WEB
DESIGN
V.XI.Competențe:
Subcompetenţe (SC):
Argumentarea utilizării corecte a elementelor
unei pagini Web.
Utilizarea elementelor avansate de afişare a
informaţiilor pe pagină.
Transmiterea informaţiei în cadrul unei
pagini.
Utilizarea corectă a variabilelor şi operaţiilor.
Utilizarea funcţiilor predefinite.
Utilizarea arhitecturii client/server.
Recunoaşterea datelor şi metodelor unui
obiect.
Prelucrarea datelor şi metodelor unui obiect.
Lecția 2
LIMBAJUL PHP
Selectarea limbajului de scriptare
Instalarea aplicațiilor necesare pentru
serverul local
Configurarea serverului local
Scrierea scripturilor
Executarea scripturilor
Comentarea scripturilor
Depanarea scripturilor
Definirea variabilelor și constantelor în script
Scrierea expresiilor utilizând variabile,
constante și operatori
TESTE:
Lecția 3
INTRODUCERE în PHP
PHP(Hypertext Prepocessor) este un
limbaj de programare orientat spre WEB
ce permite dezvoltatorilor crearea de
aplicaţii cu conţinut dinamic, care
interacţionează cu baze de date.
Tipul tablou
PHP pune la dispoziţie un tip optimizat
de date definit ca tipul tablou care
asigură facilităţi multiple pentru
definirea şi prelucrarea tablourilor
unidimensionale şi multidimensionale.
Tipul obiect
O colecţie de date şi metode care
utilizează aceste date definesc o clasă.
Datele unei clase sunt reprezentate prin
variabile iar metodele sunt funcţiile
membru ale clasei astfel definite. Un
obiect este o instanţiere a clasei din care
face parte. Accesul la datele şi metodele
membre ale unei clase se face cu
ajutorul operatorului ->. În PHP definirea
unei clase se face cu ajutorul tipul class.
Funcții:
nu au $ in față !!!
- Utilizarea funcțiilor predefinite
- Definirea funcțiilor proprii
- Recursia
XAMMP:
instalare-(I)
General, Services, Network, Volumes,
Log
1 - lampp/htdocs
2 - index.php
run:
folder htdocs in Visual Studio Code:
Open Folder/htdocs; files: php, html,
css, txt, png, pdf, json, alte folder, etc.;
run 1:
realmente avem nevoie de mai multe
index.php, deaceea se vor numi
index1.php, index2.php, etc., efectuând
rename de fiecare dată;
run 2:
We builder - lucrează doar cu php:
descriere;
Desktop-(II)
la instalare cu Bitnami rezultatele apar
pe localhost: 8080 adică portul se arată
explicit !!!
Lecția 4
teste:
Lecția 5
__construct
__destruct
__call
__callStatic
__get
__set
__isset
__unset
__sleep
__wakeup
__toString
__set_state
__clone,
etc,
Lecția 6
PROGRAMMING IN PHP
vizibilitate: Spațiu de vizibilitate
teste:
Lecția 7
Operator for:
array asocitaiv, label la parsing:
ex: $cars=array («BMW» =>»X5»,
«VW»=>»Passat»);
=> key vizibilitate: print_r();echo $cars
[«VW»];
Operator if:
Lecția 8
MYSQL
Concluzii:
Folosirea bazelor de date pe Web
deschide noi şi mari posibilităti de lucru
în Internet şi poate face mult mai
puternic un Web, economisind timpul de
actualizare, permitând utilizatorilor:
- să interacționeze,
- să răspundă,
- şi multe altele…
Lecția 9
MYSQL. Continuare
PHPMyAdmin-interface:
192.168.64.2
Lecția 10
I I . W E B P a g e : P H P, J AVA S C R I P T,
PYTHON, ETC.
Lectia 11
site 1
Site de verificare
script
<?php
echo '<b>'.(" WEB page
GARLA_EUGENIU").'<b>'.'<b>'.'<b>'."<br
>"."<hr>";
echo (" 22.12.2019
").'<b>'.'<hr>';
echo (" autor: Garla
Eugeniu").'<b>'.'<b>'.'<br>'.'<hr>';
include 'test.php';
echo ("<hr>");
for ($i=1;$i<=2;$i++){};
?>
<?php
require_once 'meniu.php';
?>
<?php
require "connectBD.php";
?>
<!DOCTYPE html>
<html>
<head>
<title> SITE MODEL </title>
<link rel="stylesheet" type="text/css"
href="style1.css"
</head>
<body bgcolor="green">
<?php
echo $meniu;
$sql ="SELECT * FROM garla";
$result =mysqli_query($connect_BD,
$sql);
echo ("Lista PASSWORD din tabelul
Bazei de Date")."<b>".'<b>'.'<br>';
echo
("**************************************")."<b>"
.'<b>'.'<br>';
while ($row =$result->fetch_assoc()){
echo (" password : ");
echo $row["password"].'<b>'.'<br>';
}
echo ("<hr>");echo ("<hr>");echo
("<hr>");
echo ("Rezultatul operatiilor efectuate :
").'<br>'.'<br>';
require "style.css";
echo ("<hr>");echo ("<hr>");echo
("<hr>");echo ("<hr>");
?>
</body>
</html>
Lecția 12
site 2
Lecția 13
site 3
<!DOCTYPE html>
<html>
<head>
<title> Simple WEB Page </title>
<style>
div h3 {
margin:2px;
position:300px;
bottom:150px;
right:25px;
}
</style>
</head>
<body bgcolor="yellow">
<h3> IN PAGINA SE AFISEAZA ZIUA,
DATA, ORA +
SE ASCUND CUVINTE SI SITE-URI
CENZURATE + MULTIPLICARE
TABELE</h3>
<p> <link rel="stylesheet" type="text/
css" href="style4.css"</p>
<?php
echo '<b>'.(" PHP WEB page
").'<b>'.'<b>'.'<b>'."<br>"."<hr>";
echo (" Create 22.04.2020
").'<b>'.'<hr>';
echo (" autor: Garla
Eugeniu").'<b>'.'<b>'.'<br>'.'<hr>';
//Data+Ora
echo'<br> <a href="style1.css"> </a>';
date_default_timezone_set('Europe/
CHISINAU');
echo date('l');
echo '<br />'. date('j-F-Y');
echo '<br />'. date('H:i:s');
//Cenzurare cuvinte - functia :
preg_replace
$string=('Allo !!! vand droguri');
$string1=('www.abcdefghijklmn.inf');
$patts1='/www.abcdefghijklmn.inf/';
$patts = array();
$patts[0] = '/vand/';
$patts[1] = '/droguri/';
$patts[2] = '/!/';
$rs1='www.##############.inf';
$rs = array();
$rs[2] = '****';
$rs[1] = '+++++++';
$rs[0] = '-';
echo '<br>'.'<hr>';
echo preg_replace ($patts,$rs,$string);
echo'<br>'.'AICI ESTE ASCUNS UN TEXT
CENZURAT !!!'.'<br>';
echo preg_replace
($patts1,$rs1,$string1);
echo'<br>'.'AICI ESTE ASCUNS UN SITE
INTERZIS !!!'.'<hr>';
echo "<h3>MULTIPLICATION TABLE</
h3><p></p>";
$mult100=100;$mult101=101;$mult102=1
02;$mult103=103;$mult104=104;
$mult105=105;$mult106=106;$mult107=1
07;$mult108=108;$mult109=109;
$n1f=number_format($mult101);
$n2f=number_format($mult102);
$n3f=number_format($mult103);
$n4f=number_format($mult104);
$n5f=number_format($mult105);
$n6f=number_format($mult106);
$n7f=number_format($mult107);
$n8f=number_format($mult108);
$n9f=number_format($mult109);
for ($i=1;$i<=9;$i++)
{
echo $i."x".$n1f."=".$i*$n1f."
"."-----".'';
echo $i."x".$n2f."=".$i*$n2f."
"."-----".'';
echo $i."x".$n3f."=".$i*$n3f."
"."-----".'';
echo $i."x".$n4f."=".$i*$n4f."
"."-----".'';
echo $i."x".$n5f."=".$i*$n5f."
"."-----".'';
echo $i."x".$n6f."=".$i*$n6f."
"."-----".'';
echo $i."x".$n7f."=".$i*$n7f."
"."-----".'';
echo $i."x".$n8f."=".$i*$n8f."
"."-----".'';
echo $i."x".$n9f."=".$i*$n9f." "."<br>";
}
echo '<hr>';
?>
Lecția 14
site 4
CURS VALUTAR - file.txt
Lecția 15
site 5
BOOTSTRAP
Bootstrap 4 - the most popular
HTML, CSS, and JavaScript
framework for developing
responsive, mobile-first websites.
www.getbootstrap.com
• Bootstrap is a free front-end
framework for faster and easier web
development
• Bootstrap includes HTML and CSS
based design templates for
typography, forms, buttons, tables,
navigation, modals, image carousels
and many other, as well as optional
JavaScript plugins
• Bootstrap also gives you the ability to
easily create responsive designs
Responsive web design is about
creating web sites which automatically
adjust themselves to look good on all
devices, from small phones to large
desktops.
1.Icons
2.Themes
script
<!DOCTYPE html>
<html lang="en">
<head>
<title>PHP WEB SITE</title>
<meta charset="utf-8">
<meta name="viewport"
content="width=device-width, initial-
scale=1">
<link rel="stylesheet" href="https://
maxcdn.bootstrapcdn.com/bootstrap/
4.4.1/css/bootst
<script src="https://
ajax.googleapis.com/ajax/libs/jquery/
3.4.1/jquery.min.js"></script
<script src="https://
cdnjs.cloudflare.com/ajax/libs/popper.js/
1.16.0/umd/popper.min.js"
<script src="https://
maxcdn.bootstrapcdn.com/bootstrap/
4.4.1/js/bootstrap.min.js"></scr
<style>
span {
display: inline-block;
width: 68px;
height: 68px;
margin: 6px;
background-color: rgb(17, 48, 143);
}
</style>
</head>
<body>
<div class="container">
<p class="bg-info text-white">
INFORMATIE IMPORTANTA PENTRU
BUSINESS !!! ATENTIE LA
<h3>ELEMENTE de PROIECTARE la un
SITE, utilizand platforma BOOTSTRAP
(versiunea a 4-a)<
<p></p>
<span class="rounded-bottom"></
span>
<span class="rounded-lg"></span>
<span class="rounded-top"></span>
<span class="rounded-right"></span>
<span class="rounded-bottom"></
span>
<span class="rounded-left"></span>
<span class="rounded-circle"></span>
<span class="rounded-0"></span>
<span class="rounded-sm"></span>
<span class="rounded"></span>
<span class="rounded-lg"></span>
<span class="rounded-top"></span>
<span class="rounded-right"></span>
</div>
<p class="text-center"
> ANTET FIRMA GARLA SRL
Examen PHP
Codul disciplinei
Tipul disciplinei: Fundamentală, obligatorie
Anul de studiu/semestrul: Anul II, III, IV
Limba de predare: română
Credite ECTS 5
Numărul de ore de contact/ Numărul total de ore
Evaluare: Examen oral, asistat de calculator
Titularul cursului:
Teme pentru examene:
PHP – limbajul de scriptare
Server local
Depănarea scripturilor
Instrucțiuni:
-condiționale
-de salt
-repetitive
-creare biblioteci
Funcții:
-predefinite
-vizibilitate variabile
BD (MySQL):
-conexiune
-model PDO
-operații cu BD
-interogări
-înserări
-modificări
-ștergeri
Securitate date în aplicații WEB
Referințe obligatorii:
1.Site Didactic, Limbajul PHP
2.V. Ivașcu, Inițiere în PHP@MySQL,
orceon, v 2.1
3. XAMPP is the most popular PHP
development environment, WEB Server
APPACHE
4.Manual PHP, Documentation, php.net
5.PHP Tutorial, w3scools.com
6.PHP, Wikipedia
7.WeBuilder 2020 download, PHP
8.MySQL Enterprise Edition, mysql.com