Componenta Joomla Pentru Secretariat In Invatamintul Preuniversitar
LUCRARE DE LICENȚĂ
componenta joomla pentru secretariat in invatamintul preuniversitar
Cuprins
1 INTRODUCERE
1.1 Contextul actual
1.2 Domeniul temei
1.3 Tema proiectului
2 FUNDAMENTARE TEORETICA
2.1 Internetul (World Wide Web)
2.2 HTML (HyperText Markup Language)
2.2.1 Introducere HTML
2.2.2 Istoria HTML
2.2.3 HTML
2.3 PHP (Hypertext Preprocessor)
2.3.1 Ce este PHP?
2.3.2 Ce poate face PHP?
2.3.3 Elemente de bază ale sintaxei
2.3.3.1 Ieșirea din modul HTML
2.3.3.2 Separarea instrucțiunilor
2.3.3.3 Comentariile
2.3.4 Tipuri de date
2.3.5 Variabile
2.3.5.1 Noțiuni de bază
2.3.6 Variabile predefinite
2.3.6.1 PHP Superglobals
2.3.6.2 Folosirea variabilelor statice
2.3.6.3 Variabile din afara mediului PHP
2.3.6.4 Cookie-uri HTTP
2.4 MySQL
2.4.1 Introducere in MySQL
2.4.2 Caracteristicile de baza ale MySQL
2.4.2.1 Tipuri de coloane
2.4.2.2 Comenzi și funcții
2.4.2.3 Securitate
2.4.2.4 Scalabilitate și limite
2.4.2.5 Conectivitate
2.4.2.6 Localizare
2.4.2.7 Clienți și unelte
2.4.3 Fundamente MySQL
2.4.3.1 Conectarea și deconectarea de la server
2.4.3.2 Conectarea și deconectarea de la server
2.4.3.3 Crearea și utilizarea unei baze de date
2.4.3.4 Crearea și selectarea unei baze de date
2.4.3.5 Crearea tabelelor
2.5 Serverul web Apache
2.6 Joomla
Introducere
Contextul actual
Pagina web a scolii este foarte importanta atat pentru promovarea scolii si a activitatilor din cadrul scolii cat si pentru elevi si parinti. O pagina web ofera posibilitatea de a oferii informatii catre o multime de persoane fizice sau juridice, din toate colturile lumii prin intermediul World Wide Web-ului, rapid si cu costuri scazute.
Internetul se aflas intr-o continua expansiune zilnic, ceea ce inseamna un numar mai ridicat de utilizatori online. Din punctul de vedere al promovarii scolii, acesti utilizatori se pot informa despre activitatile din cadrul scolii si pot comunica cu persoanele ce reprezinta scoala intr-un mod simplu si rapid.
Avantajele unui site web:
Posibilitatea de a te adresa unei arii mari de persoane, fara cheltuieli semnificative. Cu ajutorul unui web site este foarte simplu sa te adresezi oricui, din orice zona a lumii.
Un site web este cel mai bun angajat. Acesta va promova scoala si va oferii informatii 24 de ore pe zi, 7 zile pe samptamana, 12 luni pe an, fara incetare.
Ofera posibilitatea de a tine legatura cu elevii si parintii intr-un mod ieftin si facil. Este important pentru o scoala parerea elevilor si a parintilor despre activitatile din cadrul scolii. Transparenta si comunicarea sunt aspecte importante in cadrul scolii pentru viitor.
Imaginea scolii are de castigat. O scoala care este prezenta in toate domenii de promovare inspira un grad sporti de incredere si profesionalism.
Domeniul temei
Scopul proiectului este de a crea o componenta Joomla pentru a usura si facilita munca din cadrul secretariatului unei scoli. Aceasta componenta ofera o interfata usor de folosit atat pentru secretariat cat si pentru elevi si studenti.
O componenta Joomla este usor de instalat si configurat de catre administratorul site-ului web, acest proces avand costuri minimale.
Tema proiectului
Se cere crearea unei compente Joomla ce foloseste o baza de date relationala. Serviciul de baze de date utilizat este MySQL.
Componenta Joomla este compusa din doua sub-componente, o componenta back-end si o componenta front-end. Componenta back-end va oferii secretariatului posibilitatea de a crea, modifica si sterge elevi, note si materii, iar componenta front-end pentru a afisa informatii despre elevii precum, note, materii, date despre elevi.
Fundamentare Teoretica
Internetul (World Wide Web)
Internet-ul reprezinta mai mult decta o retea uriasa de calculatoare . El constituie o retea de retele (comerciale , militare , academice , universitare , educationale etc. ), fiind, in plus , un mediu informational imens ce ofera servicii si resurse din cele mai diverse –baze de date , biblioteci- dar si o nebanuita comunitate de persoane din cele mai diferite domenii ale vietii economico-sociale . O definitie succinta a Internet-ului poate fi formulata astfel : un numar foarte mare de calculatoare raspandite in toata lumea, legate intre ele pentru stocarea , partajarea si directionarea diverselor tipuri de informatii.
La inceput reteaua avea scopul de a servi programele de cercetare si de a rezolva orice problema legata de calculatoare . Usurinta cu care se pot distribui informatii dar mai ales usurinta cu care orice utilizator poate avea acces la informatii , a facut din Internet un mediu de nelipsit . Sunt distribuite informatii de orice tip , incepand cu programe de invatare a utilizarii microcalculatoarelor , continuand cu lectii de insusire a cunostinteleor din cele mai diverse domenii , stiri , baze de date imense , cotatii la bursa , oferte de locuri de munca , legislatie , retete medicale , muzee virtuale si chiar rete culinare .
Inceputurile Internet se situeaza in anii ’60 . Astfel in 1967 Bob Taylor a lucrat la ARPA (Advanced Research Project Agency ) , a avut ideea de a lega impreuna intr-o retea redundanta , bazata pe pachete toate calculatoarele de la universitatile importante participante la programele agentiei.
Astfel se realizeaza in 1969 prima conexiune la distanta intre doua calculatoare , ARPA experimentand o retea de comutare de pachete , bazata pe linii telefonice , intre Stanford Research Institute si University of California din Los Angeles . In acest fel ia nastere ARPANET ( Advanced Research Project Agency Network).
Potrivit Comupter Industry Almanac Inc .,numarul utilizatorilor a ajuns la sfarsitul anului 1980 la 150 milioane . Numai in SUA aproape 67 de milioane de utilizatori adica aproape 51% din total .
Romania , desi a aparut relativ tarziu in peisajul comunicatiilor globale , a marcat o crestere impresionanta intr-un scurt interval de timp : de la 15 calculatoare gazda (host ) in februarie 1993 la 2727 calculatoare gazda in ianuarie 1996 si 26362 calculatoare gazda in februarie 1999.
Internet-ul nu este proprietatea cuiva , nu exista nici o companie care sa impuna reguli. Desigur , fiecare componenta este proprietatea cuiva , dar reteaua ca intreg nu are un „patron’’ este un sistem care isi mentine integritatea datorita intereselor mutuale ,desi numarul organizatiilor depaseste 50 de mii. Internet-ul este o retea descentralizata , uneori chiar anarhica , dar fara aceasta descentralizare nu s-ar fi ajuns la o cresterea si dezvoltarea ei spectaculoasa. Internet-ul este administrat prin consens de diferite organizatii care se intrunesc pentru a gasi cea mai buna metoda globala pentru functionarea retelei .
Incepand cu 1983 , functioneaza si o organizatie ce are ca scop ghidarea evolutiei protocolului TCP/IP-Internet Activities Board (IAB).Aceasta ofera sfaturi si sprijin in cercetarile efectuate in sprijinul comunitatii Internet . De-a lungul evolutiei IAB a fost organizat in mai multe randuri, in prezent avand doua componente :Internet Engineering Task Force ,ce are responsabilitatea dezvolatrea protocolului TCP/IP si integrarea altor protocoale in Internet (cum este OSI) si Internet Research Task Force ,care continua sa orgaizeze si sa exploreze concepte avansate privind retelele .
HTML (HyperText Markup Language)
Introducere HTML
Pentru a publica informația astfel încât să poată fi distribuită la nivel global este necesar un limbaj universal, pe care toate calculatoarele să îl poată înțelege. Limbajul folosit de World Wide Web este HTML (HyperText Markup Language – Limbaj de marcare hipertext).
HTML oferă autorilor mijloace pentru:
publicarea de documente online conținând antet, text, tabele, liste, fotografii, etc.
obținerea de informații online printr-un simplu clic de maus, prin intermediul legăturilor hipertext
crearea de formulare pentru a realiza schimb de date cu servicii de la distanță, utilizate pentru a căuta informații, a face rezervări, a comanda produse, etc.
includerea de foi de calcul, videoclipuri, clipuri audio și alte formate direct în documentele online
Istoria HTML
HTML a fost inițial dezvoltat de Tim Berners-Lee la CERN și popularizat de browserul Mosaic dezvoltat la NCSA. În anii ’90 acesta s-a dezvoltat odată cu creșterea explozivă a web-ului. În acest timp, HTML a fost extins în diferite feluri. Însă web-ul depinde de folosirea unor convenții comune pentru HTML de către autorii și producătorii de browsere. Aceasta a motivat munca în comun pentru crearea unor specificații pentru HTML.
HTML 2.0 (noiembrie 1995) a fost dezvoltat sub îndrumarea Internet Engineering Task Force (IETF) pentru a codifica practica obișnuită de la sfârșitul anului 1994. HTML+ (1993) și HTML 3.0 (1995) au propus versiuni mult îmbogățite ale limbajului. În ciuda faptului că niciodată nu s-a ajuns la consens în discuțiile despre standard, aceste specificații au dus la adoptarea unei varietăți mari de caracteristici. Eforturile Grupului de lucru pentru HTML al Consorțiumului World Wide Web de a codifica practica obișnuită din 1996 a rezultat în HTML 3.2 (ianuarie 1997).
Majoritatea persoanelor sunt de acord că documentele HTML ar trebui să funcționeze bine pe diferite browsere și platforme. Obținerea interoperabilității scade costul pentru cei care oferă conținutul atâta timp cât ei trebuie să realizeze doar o versiune a documentului. Dacă nu se face efortul necesar există riscul mult mai mare ca web-ul să devină o lume de formate incompatibile, reducând în cele din urmă potențialul comercial pentru toți participanții.
Fiecare versiune de HTML a încercat să reflecte un mai mare consens între părțile implicate astfel încât investițiile realizate furnizorii de conținut să nu se piardă prin ajungerea la situația în care documentele lor să nu poată fi citite după o perioadă scurtă de timp.
HTML 4
HTML 4 extinde limbajul cu mecanisme pentru foi de stil, scripting, frame-uri, obiecte înglobate, suport îmbunătățit pentru text scris de la dreapta la stânga sau mixt, tabele îmbogățite și îmbunătățiri pentru formulare, oferind accesabilitate crescută pentru persoanele cu probleme.
HTML 4.01 este o revizuire a HTML 4.0 care corectează câteva erori și face câteva schimbări minore față de versiunea precedentă.
Dezvoltat cu ajutorul unor experți în materie de internaționalizare, această versiune de HTML permite scrierea documentelor în orice limbă și transportarea lor cu ușurință în lume. Un pas important a fost adoptarea standardului ISO10646 ca set de caractere pentru HTML. Acesta este standardul cel mai cuprinzător din lume, tratând probleme ca reprezentarea caracterelor internaționale, direcția textului, punctuație și alte aspecte ale limbilor lumii. Cu această versiune, HTML oferă suport sporit pentru diverse limbaje dintr-un document, ceea ce permite indexări mai eficiente ale documentelor de către motoarele de căutare, tipografie de calitate mai bună, conversie text-voce mai bună, punctuație mai bună, etc.
Odată cu creșterea comunității web și cu diversificarea abilităților și îndemânărilor membrilor săi, este crucial ca tehnologiile de bază să fie adecvate nevoilor lor specifice.
HTML a fost dezvoltat pentru a face paginile web mai accesibile pentru cei cu limitări fizice. Versiunea 4 include multiple aspecte ce țin de accesabilitate, printre care pot fi amintite:
o distincție mai bună între structura documentului și prezentare, încurajând astfel folosirea foilor de stil în locul atributelor HTML de prezentare
formulare mai bune, incluzând adăugarea tastelor de acces, posibilitatea de a grupa controalele semantic, abilitatea de a grupa opțiunile SELECT semantic și etichetele active
posibilitatea de a marca descrierea text a unui obiect inclus
cerința ca imaginile să fie însoțite de text descriptiv
tabele mai bune, incluzând legendă, grupuri de coloane și mecanisme de facilitare a redării non-vizuale.
Autorii care creează pagini având în vedere le limbilor lumii. Cu această versiune, HTML oferă suport sporit pentru diverse limbaje dintr-un document, ceea ce permite indexări mai eficiente ale documentelor de către motoarele de căutare, tipografie de calitate mai bună, conversie text-voce mai bună, punctuație mai bună, etc.
Odată cu creșterea comunității web și cu diversificarea abilităților și îndemânărilor membrilor săi, este crucial ca tehnologiile de bază să fie adecvate nevoilor lor specifice.
HTML a fost dezvoltat pentru a face paginile web mai accesibile pentru cei cu limitări fizice. Versiunea 4 include multiple aspecte ce țin de accesabilitate, printre care pot fi amintite:
o distincție mai bună între structura documentului și prezentare, încurajând astfel folosirea foilor de stil în locul atributelor HTML de prezentare
formulare mai bune, incluzând adăugarea tastelor de acces, posibilitatea de a grupa controalele semantic, abilitatea de a grupa opțiunile SELECT semantic și etichetele active
posibilitatea de a marca descrierea text a unui obiect inclus
cerința ca imaginile să fie însoțite de text descriptiv
tabele mai bune, incluzând legendă, grupuri de coloane și mecanisme de facilitare a redării non-vizuale.
Autorii care creează pagini având în vedere aspectele legate de accesibilitate nu numai că vor fi apreciați de comunitatea celor vizați de aceste aspecte, dar vor beneficia și în alte moduri: documentele bine create, care disting între conținut și prezentare se vor adapta mai ușor la noile tehnologii.
Cu noul model de tabel, autorii au un control crescut asupra structurii și înfățișării (ex. grupurile de coloane). Posibilitatea creatorilor de a recomanda lățimea coloanelor permite browserelor să afișeze datele din tabel treptat, fără să aștepte încărcarea întregului tabel înainte de încărcare.
De asemenea, în această versiune HTML oferă un mecanism standard de a insera obiecte și aplicații media generice în paginile web. Există elemente care oferă mecanismul necesar pentru a include imagini, video, sunet, ecuații matematice, aplicații specializate și alte obiecte într-un document. Acestea le permit de asemenea autorilor să specifice o ierarhie de opțiuni alternative de afișare pentru browsere care nu suportă un mod anume de afișare.
O caracteristică foarte importantă a limbajului o reprezintă foile de stil. Acestea simplifică mult codul HTML și îl eliberează destul de mult de responsabilitățile de prezentare a datelor. Ele dau atât autorilor cât și utilizatorilor controlul asupra prezentării documentelor – informații despre font, aliniere, culori, etc.
Informațiile legate de stil pot fi specificate individual pentru elemente sau pentru grupuri, într-un document HTML sau în foi de stil externe. Mecanismul de asociere a foilor de stil este independent de limbajul acestora.
Înainte de apariția foilor de stil, autorii aveau control limitat asupra afișării. HTML 3.2 includea un număr de atribute și elemente oferind control asupra alinierii, dimensiunii fontului și culorii textului. Ei mai exploatau tabelele și imaginile ca mijloace de aranjare în pagină. Oricum, având în vedere faptul că foile de stil oferă un mecanism de prezentare mai puternic, Consorțiul World Wide Web va elimina în cele din urmă multe dintre elementele de prezentare și atributele HTML. Acestea sunt marcate ca „depricated”, iar documentația oferă exemple de obținere a aceluiași efect cu alte elemente sau prin intermediul foilor de stil.
O posibilitate deosebit de utilă este aceea de a folosi scripturi în documentele HTML, autorii putând astfel pagini web dinamice (ex.: „formularele inteligente” care interacționează cu utilizatorul la completare). Aceasta permite de asemenea ca folosind pagini web să se realizeze aplicații în rețea. Mecanismele de includere a scripturilor în HTML sunt, de asemenea, independente de limbajul de scripting.
PHP (Hypertext Preprocessor)
Ce este PHP?
PHP (acronim recursiv pentru PHP: Hypertext Preprocessor) este un limbaj de scripting de uz general, cu cod-sursă deschis (open source), utilizat pe scară largă, și care este potrivit în special pentru dezvoltarea aplicațiilor web și poate fi integrat în HTML.
Frumos, dar totuși ce înseamnă aceasta? Un exemplu:
Ce poate face PHP?
În locul unei mulțimi de comenzi pentru a afișa HTML (cum este cazul în C sau Perl), paginile PHP conțin HTML cu cod-sursă încorporat, care realizează "ceva" (în acest caz, afișează "Salut, sunt un script PHP!"). Codul-sursă PHP este încorporat între niște instrucțiuni de procesare de început și de sfârșit speciale <?php și ?>, care vă permit să intrați și să ieșiți din "modul PHP".
Cu PHP se poate face orice. PHP este în principal axat pe partea de scripting ce rulează pe server, deci poate face orice face și un program CGI, cum ar fi colectarea de date de la formulare, generarea de conținut dinamic sau trimitere și primire de cookie-uri. Dar PHP poate face mult mai multe.
Există trei domenii principale unde sunt folosite scripturile PHP:
– Scripturi ce ruleaza pe server. Acesta este cel mai tradițional și cel mai important pentru PHP. Este nevoie de trei lucrui pentru a face să meargă: interpretorul PHP (CGI sau modul de server), un server web și un browser web. E nevoie ca serverul de web să fie pornit, cu o conexiune PHP instalată. Se poate accesa rezultatul programelor PHP cu un browser prin intermediul serverului de web.
– Scripting in linie de comandă. Se poate face ca PHP să ruleze fără a fi nevoie de server și de browser, ci doar de interpretorul PHP. Această metodă este ideală pentru scripturile ce se vor a fi executate de regulă folosind cron (task scheduler în Windows), sau sarcini simple de procesare a textelor.
– Scrierea de aplicații ce rulează de partea clientului în mod grafic (GUI). Probabil că PHP nu este limbajul cel mai bun de a scrie aplicații cu ferestre pentru Windows sau alte sisteme de operare, dar dacă este bine cunocut și se dorește folosirea unor facilități avansate ale PHP-ului în aplicațiile ce rulează de partea clientului, se poate totuși folosi PHP-GTK pentru a scrie astfel de programe. De asemenea, există posibilitatea de a scrie aplicații ce rulează pe platforme diferite folosind această metodă. PHP-GTK este o extensie a PHP-ului, nedisponibila în distribuția principală de PHP.
PHP poate fi folosit pe aproape toate marile sisteme de operare, incluzând Linux, multe variante de Unix (incluzând HP-UX, Solaris și OpenBSD), Microsoft Windows, Mac OS X, RISC OS, probabil și altele. PHP are de asemenea suport pentru majoritatea serverelor de web din prezent. Acestea includ serverele Apache, Microsoft Internet Information Server, Personal Web Server, Netscape și iPlanet, serverul Oreillz Website Pro, Caudium, Xitami, OmniHTTPd, și multe atele. Pentru majoritatea serverelor PHP are un modul, iar pentru celelalte suportă standardul CGI, PHP putând să lucreze ca un procesor CGI.
Deci, cu PHP, există libertatea de a alege un sistem de operare și un server de web. Chiar mai mult, există posibilitatea de a alege programarea procedurală sau programarea orientată obiect, sau chiar să se combine acestea. Cu toate acestea, nu orice facilitate a standardului POO este prezentă în versiunea curentă a PHP-ului, multe librării de cod și aplicații mari (incluzând și librăria PEAR) sunt scrise folosind doar cod POO.
Cu PHP programatorul nu este limitat să scoată rezultat HTML. Posibilitățile PHPului includ afișarea de imagine, fișiere PDF și chiar filmulețe Flash (folosind librăriile libswf și Ming) toate generate instant. Se poate de asemeanea ca rezultatul să fie orice fisier text, cum ar fi XHTML sau orice alte fisiere XML. PHP poate genera automat aceste fișiere și să le salveze în sistemul de fisiere în loc să le afișeze, formând un cache de partea serverului pentru conținutul dinamic.
Una dintre cele mai puternice și importante facilități în PHP este suportul său pentru o gamă larga de baze de date. Scrierea une pagini de web ce interacționeaza cu o bază de date este incredibil de simplă. PHP suportă și ODBC, standardul Open Database Connection, deci se poate conecta la orice altă bază de date ce suporta acest standard mondial.
PHP are deasemeanea suport pentru a conversa cu alte servicii folosind protocoale cum ar fi LDAP, IMAP, SNMP, NNTP, POP3, HTTP, COM (pe Windows) și multe altele. Se pot, de asemenea, deschide socket-uri de rețea și se poate interacționa între aproape toate limbajele de programare Web. PHP are suport pentru instanțierea obiectelor Java și utilizarea lor într-un mod transparent ca obiecte PHP. Se pot de asemenea folosi extensii CORBA pentru a accesa obiecte aflate la distanță.
PHP are capabilități extrem de folositoare pentru procesarea textului, de la POSIX extins sau expresii regulare Perl, până la parsarea documentelor XML. Pentru parsarea și accesarea documentelor XML, suportă standardele SAX și DOM.
Folosind PHP în domeniul comerțului electronic, sunt foarte folositoare pentru programul tău de plați online funcții de plată Cybercash, CyberMUT, VeriSign Payflow Pro și CCVS.
În cele din urmă, dar nu ultimul rând, PHP are și alte extensii interesante, cum ar fi funcții ale motorului de căutare mnoGoSearch, funcții pentru accesarea IRC-ului, multe utilitare de compresie (gzip, bz2), conversie de calendar, traducere.
Elemente de bază ale sintaxei
Ieșirea din modul HTML
Când PHP interpretează un fisier trece prin textul acestuia până când întâlneste unul din tag-urile speciale care îi spun să pornească interpretarea textului ca fiind cod PHP. Mai departe, parser-ul execută tot codul întâlnit, până la întâlnirea unui tag PHP de închidere, care anunță trecerea normală prin text, din nou. Acest mecanism permite înglobarea codului PHP în interiorul codului HTML: tot ceea ce este în afara tag-urilor PHP este lăsat nemodificat, în timp ce tot ceea ce este în interior este interpretat ca fiind cod.
Există patru categorii de tag-uri care pot fi folosite pentru a marca bolcurile de cod PHP. Dintre acestea, doar două (<?php. . .?> și <script language="php">. . .</script>) sunt întotdeauna disponibile. Cu toate ca tag-urile în format scurt și cele de tip ASP par a fi convenabile, ele nu sunt la fel de portabile ca cele în format lung. De asemenea, dacă se dorește includerea codului PHP în XML sau XHTML, este necesar să se folosească tag-urile în forma <?php. . .?> pentru a corespunde standardului XML.
Cele patru tipuri de tag-uri sunt:
1. <?php echo("if you want to serve XHTML or XML documents, do like this\n"); ?>
2. <? echo ("this is the simplest, an SGML processing instruction\n"); ?>
<?= expression ?> This is a shortcut for "<? echo expression ?>"
3. <script language="php">
echo ("some editors (like FrontPage) don't
like processing instructions");
</script>
4. <% echo ("You may optionally use ASP-style tags"); %>
<%= $variable; # This is a shortcut for "<% echo . . ." %>
Prima variantă, <?php. . .?>, este metoda preferată deoarece permite folosirea PHPului în cod corform standardului XML, cum ar fi XHTML.
Cea de-a doua variantă nu este întotdeauna posibilă. Tag-urile prescurtate pot fi folosite doar dacă au fost activate. Acest lucru poate fi făcut prin intermediul funcției short_tags() (numai în PHP3), prin activarea opțiunii short_open_tag în fisierul de configurare, sau prin compilarea scripturilor folosind opțiunea enable-short-tags. Chiar dacă este implicit activată în fisierul php.ini, folosirea tag-urilor prescurtate nu este recomandată.
Cea de-a patra variantă poate fi folosită numai dacă tag-urile de tip ASP au fost activate folosind setarea asp_tags din fisierul de configurare.
PHP permite folosirea unor structuri ca cea de mai jos:
<?php
if ($expression) {
?>
<strong>This is true.</strong>
<?php
} else {
?>
<strong>This is false.</strong>
<?php
}
?>
Aceasta funcționează exact cum este de asteptat, deoarece când PHP întâlnește tag-ul de închidere ?> începe afișarea a ceea ce întâlneste până la apariția unui alt tag de start. În cazul blocurilor mari de text, ieșirea din modul PHP este în general mai eficientă decât trimiterea textului folosind echo() sau print().
Separarea instrucțiunilor
Instrucțiunile sunt separate la fel ca în C sau Perl – fiecare instrucțiune este terminată cu un semn punct și virgulă.
Tag-ul de închidere implică și sfârsitul instrucțiunii, deci următoarele două exemple sunt echivalente:
<?php echo "This is a test"; ?>
<?php echo "This is a test" ?>
Comentariile
PHP suportă comentarii de tip 'C', 'C++' și Unix shell. De exemplu:
<?php
echo "This is a test"; // This is a one-line c++ style comment
/* This is a multi line comment
yet another line of comment */
echo "This is yet another test";
?>
Comentariul pe o sigură linie, de fapt realizează comentarea codului până la sfârsitul liniei curente sau până la terminarea blocului curent PHP, oricare din aceste două cazuri apare primul.
Tipuri de date
PHP suportă opt tipuri primitive de date :
Patru tipuri scalare: Boolean, integer, float (numere în virgulă mobilă, sau ‘double’),
string.
Două tipuri compuse: array, obiect .
Două tipuri speciale: resource, NULL .
Tipul unei variabile, de obicei nu este stabilit de programator, ci este decis la rulare de PHP, în funcție de contextul în care acea variabilă este folosită.
Variabile
Noțiuni de bază
În PHP variabilele sunt reprezentate folosind un semn dollar urmat de numele variabilei, numele variabilelor fiind case-sensitive.
În PHP3 variabilele sunt întotdeauna atribuite prin valoare. Cu alte cuvinte, atunci cînd o expresie este atribuită unei variabile, întreaga valoare a expresiei originale este copiată în variabila destinație. Aceasta înseamnă că, de exemplu, după atribuirea valorii unei variabile alteia, schimbarea uneia dintre aceste variabile nu are nici un efect asupra celeilalte.
PHP4 oferă și un alt mod de a atribui valori valiabilelor: prin referință. Aceasta înseamnă că noua variabilă referă (devine un alias pentru, sau indică către) variabila originală. Schimbări în variabila nouă o afectează și pe cea inițială, și invers. Aceasta înseamnă de asemenea că nu sunt realizate copii și astfel atribuirea se realizează mai rapid.
Pentru a realiza o atribuire prin referință trebuie doar atasat un ampersand(&) la începutul variabilei care va fi atribuită (variabila sursă), ca în exemplul următor:
<?php
$foo = 'Bob'; // Assign the value 'Bob' to $foo
$bar = &$foo; // Reference $foo via $bar.
$bar = "My name is $bar"; // Alter $bar…
echo $bar;
echo $foo; // $foo is altered too.
?>
Variabile predefinite
PHP furnizează un număr larg de variabile predefinite. Multe din aceste variabile, nu pot fi documetate complet deoarece sunt dependente de serverul pe care rulează, de versiunea și setarea acestuia precum și de alți factori.
Unele din aceste variabile nu vor fi folosite când PHP rulează în linie de comandă.
PHP Superglobals
$GLOBALS
Conține o referință la fiecare variabilă care este în mod curent valabilă în scopul global al script-ului. Cheile acestui șir sunt numele variabilelor globale.
$_SERVER
Reprezintă variabilele setate de serverul de web sau legăte direct de mediul de execuție al scriptului curent.
$_GET
Reprezintă variabilele oferite scritpt-ului direct prin HTTP GET. Analog vechiului șir $HTTP_GET_VARS (care încă este valabil, dar depreciat).
$_POST
Reprezintă variabilele oferite scritpului direct prin HTTP POST. Analog vechiului șir $HTTP_POST_VARS (care încă este valabil, dar depreciat).
$_COOKIE
Reprezintă variabilele oferite scritpului direct prin HTTP. Analog vechiului șir $HTTP_COOKIE_VARS (care încă este valabil, dar depreciat).
$_FILES
Reprezintă variabilele oferite scritpului prin upload-ul de fișiere folosind modul POST din HTTP. Analog vechiului șir $HTTP_POST_FILES (care încă este valabil, dar depreciat).
$_ENV
Reprezintă variabilele oferite scritpt-ului prin mediu. Analog vechiului șir $HTTP_ENV_VARS (care încă este valabil, dar depreciat).
$_REQUEST
Reprezintă variabilele oferite scritpt-ului prin mecanismele de input GET, POST, și COOKIE, deci care nu pot fi de încredere.
$_SESSION
Reprezintă variabilele registrate unei sesiuni a script-ului. Analog vechiului șir $HTTP_SESSION_VARS (care încă este valabil, dar depreciat).
Folosirea variabilelor statice
O importantă caracteristică a scope-ului variabilei o reprezintă variabila statică. O variabilă statică există în scope-ul funcției locale, dar nu își pierde valoarea când execuția programului părăseste acest scope. Să considerăm următorul exemplu:
<?php
function Test () {
$a = 0;
echo $a;
$a++;
} ?>
Această funcție este destul de nefolositoare deoarece de fiecare dată este apelată să seteze valorea 0 variabilelei $a și să printeze "0".
Instrucțiunea $a++ care incrementează variabila nu serveste nici unui scop deoarce, de îndată ce funcția iese, variabila dispare. Pentru folosirea unei funcții de numărare care nu va mai pierde număratoarea curentă, variabiala $a este declarată statică.
<?php
function Test()
{
static $a = 0;
echo $a;
$a++;
}
?>
Astfel, de fiecare dată când funcția Test() este apelată, aceasta va afișa valoarea variabilei $a și o va incrementa.
Variabilele statice oferă, de asemenea, un mod de a lucra cu funcțiile recursive. O funcție recursivă este o funcție care se autoapelează. Trebuie avută grijă la scrierea unei funcții recursive, deoarece este posibilă realizarea unei recursii infinite. Trebuie asigurat un mod de a termina recursia. Următoarea funcție recursivă simplă numără până la 10, folosind variabila statică $count pentru a stii când să se oprească:
<?php
function Test()
{
static $count = 0;
$count++;
echo $count;
if ($count < 10) {
Test ();
}
$count–;
}
?>
Variabile din afara mediului PHP
Formulare HTML (GET și POST)
Când un formular este trimis unui scrip PHP, informațiile din acel formular sunt automat transmise scriptului PHP. Sunt mai multe modalități de a accesa informația, de exemplu:
<form action="foo.php" method="POST">
Name: <input type="text" name="username"><br>
Email: <input type="text" name="email"><br>
<input type="submit" name="submit" value="Submit me!">
</form>
Folosirea unui formular de tip GET este similară, cu deosebirea că se va folosi variabila predefinită GET în schimb. GET se poate folosi și pentru extragerea informțiilor din QUERY_STRING (informațiile de după semnul ? din URL).
Cookie-uri HTTP
PHP oferă un suport transparent pentru Cookies. Cookie-urile reprezintă un mecanism pentru stocarea datelor în browser și astfel se pot identifica utilizatorii care revin pe o anumită pagină. Cookie-urile se pot seta folosind funcția setcookie(). Cookie-urile fac parte din header-ul HTTP, deci funcția setcookie() trebuie apelată înainte de trimiterea oricărui conținut către browser. Informațiile de tip Cookie sun apoi stocate în array-urile corespunzătoare, cum ar fi $_COOKIE, $HTTP_COOKIE_VARS ca și în $_REQUEST.
Dacă se dorește atribuire unor valori multiple unei singure variabile Cookie, aceasta poate fi tratată ca un array. De exemplu:
<?php
setcookie("MyCookie[foo]", "Testing 1", time()+3600);
setcookie("MyCookie[bar]", "Testing 2", time()+3600);
?>
Aceasta va crea două variabile cookie separate, cu toate că MyCookie va fi un singur array.
MySQL
Introducere in MySQL
MySQL este un sistem de gestiune a bazelor de date relațional, produs de compania suedeza MySQL AB și distribuit sub Licența Publică Generală GNU. Este cel mai popular SGBD open-source la ora actuală, fiind o componentă cheie a stivei LAMP (Linux, Apache, MySQL, PHP).
Deși este folosit foarte des împreună cu limbajul de programare PHP, cu MySQL se pot construi aplicații în orice limbaj major. Există multe scheme API disponibile pentru MySQL ce permit scrierea aplicațiilor în numeroase limbaje de programare pentru accesarea bazelor de date MySQL, cum are fi: C, C++, C#, Java, Perl, PHP, Python, FreeBasic, etc., fiecare dintre acestea folosind un tip spefic API.
O interfață de tip ODBC denumită MyODBC permite altor limbaje de programare ce folosesc această interfață, să interacționeze cu bazele de date MySQL cum ar fi ASP sau Visual Basic. În sprijinul acestor limbaje de programare, unele companii produc componente de tip COM/COM+ sau .NET (pentru Windows) prin intermediul cărora respetivele limbaje să poată folosi acest SGBD mult mai ușor decât prin intermediul sistemului ODBC. Aceste componente pot fi gratuite (ca de exemplu MyVBQL) sau comerciale.
Licența GNU GPL nu permite încorporarea MySQL în softuri comerciale; cei care doresc să facă acest lucru pot achiziționa, contra cost, o licență comercială de la compania producătoare, MySQL AB.
MySQL este componentă integrată a platformelor LAMP sau WAMP (Linux/Windows-Apache-MySQL-PHP/Perl/Python). Popularitatea sa ca aplicație web este strâns legată de cea a PHP-ului care este adesea combinat cu MySQL și denumit Duo-ul Dinamic. În multe cărți de specialitate este precizat faptul ca MySQL este mult mai ușor de invățat și folosit decât multe din aplicațiile de gestiune a bazelor de date, ca exemplu comanda de ieșire fiind una simplă și evidentă: „exit” sau „quit”.
Pentru a administra bazele de date MySQL se poate folosi modul linie de comandă sau, prin descărcare de pe internet, o interfață grafică: MySQL Administrator și MySQL Query Browser. Un alt instrument de management al acestor baze de date este aplicația gratuită, scrisă în PHP, phpMyAdmin.
MySQL poate fi rulat pe multe dintre platformele software existente: AIX, FreeBSD, GNU/Linux, Mac OS X, NetBSD, Solaris, SunOS, Windows 9x/NT/2000/XP/Vista.
Caracteristicile de baza ale MySQL
Câteva dintre caracteristicile de baza ale MySQL sunt:
Scris in C si C++
Testat cu o gama larga de compilatoare diferite
Functioneaza pe diferite platforme
Dispune de API pentru C, C++, Eiffel, Java, Perl, PHP, Pyton, Ruby
Complet multi-threaded folosind thread-uri de kernel. Acest lucru inseamna ca poate lucra cu usurinta pe mai multe procesoare daca sunt disponibile
Ofera motoare tranzactionale si non-tranzactionale de stocare a datelor
Un sistem de alocare a memoriei foarte rapid si bazat pe thread-uri
Join-uri ale tabelelor foarte rapide
Foloseste tabele temporare stocate in memorie
Functiile SQL sunt implementate folosind o biblioteca de clase optimizata si sunt foarte rapide. De obicei, nu are loc alocare a memorie dupa initializarea interogarilor
Serverul este disponibil ca program separat ce poate fii folosit intr.-un mediu de retea de tip client/server. De asemenea, este disponibil si ca biblioteca ce poate fii inclusa in aplicatii de sine statatoare.
Tipuri de coloane
– MySQL dispune de multe tipuri de date pentru coloane: numere întregi de 1,2,3,4 și 8 bytes lungime cu/fără semn, FLOAT, DOUBLE, CHAR, VARCHAR, TEXT, BLOB, DATE, TIME, DATETIME, TIMESTAMP, YEAR, SET, ENUM, și tipuri geometrice OpenGIS
– Înregistrări cu lungime fixă și cu lungime variabilă
Comenzi și funcții
Suport complet pentru operatori și funcții în clauzele SELECT și WHERE ale interogărilor.
Suport pentru clauzele GROUP BY și ORDER BY, și pentru funcții de grup (COUNT(), COUNT(DISTINCT …), AVG(), STD(), SUM(), MAX(), MIN(), și GROUP_CONCAT()).
Suport pentru LEFT OUTER JOIN și RIGHT OUTER JOIN.
Suport pentru alias-uri de tabele și coloane.
DELETE, INSERT, REPLACE și UPDATE returnează numărul de rânduri modificate.
Comanda SHOW specifică pentru MySQL poate fi folosită pentru a obține informații despre bazele de date, tabele și indecși.
Numele funcțiilor nu intră în conflict cu numele tabelelor sau ale coloanelor.
Într-o acceași interogare se pot folosi tabele din baze de date diferite.
Securitate
– Un sistem de privilegii și parole foarte flexibil și sigur care permite verificarea pe baza host-ului.
– Parolele sunt sigure deoarece tot traficul legat de parole este criptat când are loc conectarea la server.
Scalabilitate și limite
– Manipulează baze de date de dimensiuni mari. MySQL este folosit cu baze de date care conțin 50 de milioane de înregistrări.
– Sunt permiși până la 32 de indecsi pentru un tabel. Fiecare index poate consta din una până la 16 coloane sau părți de coloane.
Conectivitate
– Clienții se pot conecta la serverul MySQL folosind socket-uri TCP/IP pe orice platformă.
– Interfața Connector/ODBC oferă suport MySQL pentru programe client care folosesc conexiuni ODBC (Open DataBase Conectivity).
– Interfața Connector/JDBC oferă suport MySQL pentru programe client Java care folosesc conexiuni JDBC (Java DataBase Conectivity).
Localizare
– Serverul poate să prezinte mesaje de eroare clienților în multe limbi.
– Suport complet pentru diferit seturi de caractere.
– Toate datele sunt salvate folosind un set de caractere specificat. Toate comparațiile pentru coloane de tip șir obisnuit de caractere sunt case-insensitive.
– Sortarea este realizată în concordanță cu setul de caractere ales.
Clienți și unelte
– Serverul MySQL are suport inclus pentru instrucțiuni SQL care verifică, optimizează și repară tabelele. Aceste instrucțiuni sunt disponibile în linia de comandă prin intermediul clientului mysqlcheck.
– Toate programele MySQL pot fi invocate cu opțiunea –help sau -? pentru a obține suport online.
Fundamente MySQL
Conectarea și deconectarea de la server
Pentru a realiza conectarea la server trebuie specificat un nume de utilizator și, de cele mai multe ori, o parolă. Dacă serverul rulează pe un alt calculator trebuie specificat și un hostname. Conectarea se realizează astfel:
shell> mysql -h host -u user -p
Enter password: ********
unde host și user reprezintă hostname-ul unde rulează serverul MySQL și respectiv numele unui cont MySQL, iar ******** reprezintă parola care trebuie introdusă.
Dacă conectarea se realizează cu succes în continuare sunt afisate informații introductive, urmate de prompt-ul mysql>
shell> mysql -h host -u user -p
Enter password: ********
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 25338 to server version: 4.0.14-log
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql>
Aceasta înseamnă că mysql este gata pentru a primi comenzile introduse.
Deconectarea de la serverul MySQL se poate realiza oricând prin introducerea comenzii QUIT (sau \a) la prompt-ul mysql.
mysql> QUIT
bye
Conectarea și deconectarea de la server
Următoarea comandă este o interogare simplă care cere serverului informații precum versiunea curentă și data curentă:
mysql> SELECT VERSION(), CURRENT_DATE;
+–––––+–––––+
| VERSION() | CURRENT_DATE |
+––––––+––––––-+
| 3.22.20a-log | 1999-03-19 |
+––––––+––––––-+
1 row in set (0.01 sec)
mysql>
Această interogare ilustrează câteva lucruri despre mysql:
– În mod normal, o comandă constă într-o declarație SQL urmată de semnul puct și virgulă.
– Cât se lansează o comandă, mysql o trimite serverului spre execuție și afisează rezultatele, apoi afișează din nou prompt-ul mysql> pentru a indica că este gata să accepte alte comenzi.
– Mysql afișează rezultatul interogărilor într-o formă tabelară. Prima linie conține etichetele coloanelor, iar liniile următoare sunt rezultatele interogării.
– Mysql afișează și numărul de rânduri returnate și cât timp a fost necesar pentru execuția interogării.
Pe o singură linie pot fi introduse mai mule comenzi, separate cu câte un semn punct și virgulă, de exemplu:
mysql> SELECT VERSION(); SELECT NOW();
O comandă nu trebuie neapărat să fie introdusă pe o singură linie, de exemplu:
mysql> SELECT
-> USER()
-> ,
-> CURRENT_DATE;
+–––––––––-+–––––––+
| USER() | CURRENT_DATE |
+–––––––––-+–––––––+
| joesmith@localhost | 1999-03-18 |
+–––––––––-+–––––––+
Prompt-ul se schimbă din mysql> în -> după introducerea primei linii a unei interogări pe mai multe linii. Aceasta indică faptul că respectiva interogare este incompletă și mysql asteaptă introducerea restului interogării.
Se poate întrerupe introducerea unei interogări pe linii multiple folosind simbolurile \c
mysql> SELECT
-> USER()
-> \c
mysql>
Crearea și utilizarea unei baze de date
Pentru a vedea bazele de date existente pe un server se foloșeste comanda SHOW:
mysql> SHOW DATABASES;
+––––––+
| Database |
+––––––+
| mysql |
| test |
| tmp |
+––––––+
Baza de date mysql este necesaă deoarece descrise privilegiile de acces ale utilizatorilor, iar baza de date test este oferită, de obicei, ca mediu de test pentru utilizatori.
Dacă baza de date test există, aceasta ar putea fi accesată astfel:
mysql> USE test
Database changed
Crearea și selectarea unei baze de date
Comanda pentru a crea o nouă bază de date este CREATE DATABASE, de exemplu:
mysql> CREATE DATABASE produse;
Crearea unei baze de date nu implică și selectarea acesteia pentru utilizare, aceasta trebuie selectată folosind comanda USE:
mysql> USE menagerie
Database changed
Selectarea bazei de date pe care se dorește să se lucreze se poate realiza și în momentul desciderii unei sesiuni mysql, la conectarea la server, astfel:
shell> mysql -h host -u user -p menagerie
Enter password: ********
Crearea tabelelor
După ce a fost creată, o bază de date nu conține nici un table, după cum se poate observa introducând comanda SHOW TABLES:
mysql> SHOW TABLES;
Empty set (0.00 sec)
Pentru a crea un tabel se folosește comanda CREATE TABLE, de exemplu:
mysql> CREATE TABLE pet (name VARCHAR(20), owner VARCHAR(20),
species VARCHAR(20), sex CHAR(1), birth DATE, death DATE);
Acum comanda SHOW TABLES va avea următorul rezultat:
mysql> SHOW TABLES;
+–––––––––-+
| Tables in menagerie |
+–––––––––-+
| pet |
+–––––––––-+
Pentru a vedea detaliile unui tabel se folosește comanda DESCRIBE:
mysql> DESCRIBE pet;
+––––+–––––-+–––+––+––––+–––+
| Field | Type | Null | Key | Default | Extra |
+––––+–––––-+–––+––+––––+–––+
| name | varchar(20) | YES | | NULL | |
| owner | varchar(20) | YES | | NULL | |
| species | varchar(20) | YES | | NULL | |
| sex | char(1) | YES | | NULL | |
| birth | date | YES | | NULL | |
| death | date | YES | | NULL | |
+–––+––––––+–––+––+––––+––-+
Serverul web Apache
Un server Web este un daemon care acceptă conexiuni conform protocolului HTTP, răspunzând cererilor recepționate de la clienți. Ca și alte protocoale utilizate în Internet, protocolul HTTP (HyperText Transfer Protocol) este un protocol de tip cerere-răspuns, bazat pe TCP/IP, destinat transferurilor de informații hypermedia.
Serverul Web Apache este un proiect al Apache Software Foundation și constă într-un efort colectiv cu scopul declarat de a dezvolta și întreține un server Web care oferă servicii HTTP pentru sistemele de operare moderne precum UNIX și Windows, caracterizat de calitățile: open-source, securizat, eficient și extensibil.
Proiectul Apache este dezvoltat de o comunitate de dezvoltatori și utilizatori cunoscută sub denumirea de Apache Group, care în procesul de dezvoltare se bazează pe consens și colaborare. Acestui număr mare de dezvoltatori i se adaugă o comunitate substanțială de programatori și/sau simpli utilizatori care contribuie cu idei, documentație, cod și mai ales feed-back-ul necesar unei dezvoltări complete.
Ajuns la versiunea 2.2.2, Apache depășește servere comerciale ale unor firme de prestigiu, prin:
– opțiunile de configurare și design-ul modular: este foarte ușoară scrierea de module care să satisfacă o funcționalitate particulară, în cazul în care acestea nu sunt deja implementate în librăria proprie.
– portabilitate: versiunea originală a serverului Apache a fost dezvoltată pentru UNIX, dar există acum și versiuni care rulează sub OS/2, Windows și alte platforme.
Dorința creatorilor Apache, după cum se specifică în site-ul Grupului Apache, este ca platforma sa să fie folosită de cât mai multă lume (companii mari sau mici, instituții de cercetare, școli, Intranet-uri ) și să se acopere cât mai multe domenii de activitate.
Câteva caracteristici ale serverului Apache sunt:
– are foarte multe facilități: Apache are suport XML, incluziune de fișiere pe parte de server, rescrierea URL-urilor, găzduire virtuală, pentru a enumera doar câteva dintre ele;
– este modular: dacă se dorește folosirea unei facilități care nu este implementată în nucleul Apache sunt foarte mari șanse să existe un modul care poate adăuga serverului acea facilitate;
– este extensibil: după cum am menționat codul sursă fiind gratis, dacă nu se găsește un modul care să ofere funcțiile de care este nevoie la un moment dat, este posibilă crearea unuia nou, care să servească nevoilor personale;
– este popular: în acest moment, serverele web Apache acoperă aproximativ 47% din piața serverelor web;
– este gratuit: nu în ultimul rând, faptul că este distribuit în mod gratuit este un atu foarte mare pentru Apache.
Joomla
Joomla! este un Content Management System (CMS), premiat in nenumarate ocazii, care te ajuta sa construiesti websiteuri si alte puternice aplicatii online. In plus, Joomla! este o solutie Open Source disponibila tuturor, gratuit.
Joomla! este folosita peste tot in lume, ca infrastructura, de la mici pagini personale pana la aplicatii web complexe. Iata cateva modalitati in care oamenii folosesc acest soft:
Websiteuri pentru corporatii sau portaluri web
Comert on-line
Websiteuri pentru firme mici
Websiteuri pentru organizatii non-profit
Aplicatii guvernamentale
Aplicatii intra si exranet pentru corporatii
Websiteuri pentru scoli si biserici
Websiteuri personale sau familiale
Portaluri pentru comunitati on-line
Websiteuri pentru reviste si ziare
Joomla! poate fi folosita pentru a administra cu usurinta orice componenta a websiteului, de la adaugarea de continut si imagini, la actualizarea unui catalog cu produse sau sondaje on-line.
Pachetul de baza Joomla! este conceput pentru a putea fi instalat cu usurinta, chiar si de non-programatori.Majoritatea oamenilor nu au probleme cu instalarea softului nostru, dar oferim si foarte mult ajutor incepatorilor. Avem o comunitate activa, in crestere, atingand peste 40.000 utilizatori si dezvoltatori prietenosi pe forumul nostru, gata sa va ajute.
Imagine 1
Odata Joomla! instalata si functionala, este foarte simplu, chiar si pentru utilizatorul non-tehnic, de a adauga continut, actualizare imagini si administrarea datelor sensibile care ajuta la functionarea optima a organizatiei sau companiei voastre. Oricine avand cunostinte primare de MS Word poate invata cu usurinta sa administreze un site Joomla!.
Printr-o interfata web simpla, veti putea adauga foarte usor stiri, articole sau declaratii de presa, sa administrati pagini cu detaliile angajatilor, oferta de munca, imagini cu produse si sa creati un numar nelimitat de sectiuni sau pagini pe site. Puteti incerca demo-ul nostru aici, pentru a vedea pe viu despre ce este vorba.
Imagine 2
Imediat dupa instalare, Joomla! se descurca de minune cu administrarea continutului necesar dezvoltarii site-ului vostru. Pentru multi utilizatori, insa, adevarata putere a Joomla! consta in framework-ul care da posibilitatea miilor de programatori din intreaga lume sa creeze add-onuri si extensii extrem de puternice:
Constructor dinamic de forumuri
Directoare economice sau organizationale
Administrare directoare
Galerii de imagini si multimedia
Solutii e-commerce si cos de cumparaturi
Calendare
Software specific blogurilor
Servicii directoare
Stiri prin email
Instrumente de colectare si raportare a diferitelor date
Servicii de inscriere
Multe companii si organizatii au cerinte care depasesc cu mult oferta de baza a pachetului Joomla! sau extensiile gratuite.
Din fericire, Joomla! ofera un framework foarte flexibil, permitand dezvoltatorilor sa creeze add-on-uri sofisticate si sa imbunatateasca Joomla! in nenumarate modalitati.
Folosind frameworkul, dezvoltatorii pot realiza cu usurinta:
Sisteme e-commere integrate
Sisteme de control al inventarului
Instrumente de raportare a datelor
Cataloage cu produse, personalizate
Sisteme de rezervari
Interconectari intre aplicatii
Daca organizatia sau compania dumneavoastra angajeaza un dezvoltator Joomla! sau contruiti o aplicatie in jurul frameworkului, veti avea un produs care nu va fi afectat de legile de proprietate intelectuala sau drepturilor de autor.
Specificatiile Aplicatie
Concluzie
Optimizare
Ce s-a realizat
Directii de dezvoltare
Copyright Notice
© Licențiada.org respectă drepturile de proprietate intelectuală și așteaptă ca toți utilizatorii să facă același lucru. Dacă consideri că un conținut de pe site încalcă drepturile tale de autor, te rugăm să trimiți o notificare DMCA.
Acest articol: Componenta Joomla Pentru Secretariat In Invatamintul Preuniversitar (ID: 149628)
Dacă considerați că acest conținut vă încalcă drepturile de autor, vă rugăm să depuneți o cerere pe pagina noastră Copyright Takedown.
