Dezvoltarea Unei Aplicatii Web Folosind Mongodb

Cuprins:

1.Introducere

. Obiective

1.2. Activitațile proiectului

1.3. Medii de dezvoltare

2.Noțiuni introductive

2.1.MongoDB

2.2.Html

2.3.Css

2.4.Ajax

2.5.Php

2.6.JavaScript

3. Aplicație

3.1 MongoDB

3.2 Php

4.Concluzii

5.Bibliografie

1.Introducere

Scopul realizarii acestei aplicatii web este de a gestiona trimiterea și primirea de mesaje,este un serviciu de tip „retea sociala”.

O rețea de socializare (rețea socială) este, general vorbind, o rețea de persoane cu scopuri comune, cum ar fi o rețea de studenți, politicieni, dar chiar și de hoți, în contrast cu rețelele tehnice ca rețeaua de telefon sau gaz metan.. Rețelele de socializare din web (Internet) sunt numite și „rețele sociale”.

În ultimii ani printr-o rețea socială se înțelege deseori și o rețea (informațională) de utilizatori Internet, bazată pe anumite situri web la care utilizatorii se pot înscrie și interacționa cu alți utilizatori, deja înscriși. Aceste rețele sociale fac parte din fenomenul relativ nou, global, numit Web 2.0. Astfel, membrii unei rețele sociale sunt legați între ei în mod informal, fără obligații, dar de obicei contribuie activ la colectarea și răspândirea informațiilor pe întregul glob prin intermediul webului. Eventual denumirea unei astfel de rețele (informaționale) de utilizatori s-ar putea echivala cu „rețea internetică de utilizatori”

Rețele sociale în sine sunt mijloace de promovare. Foarte populare peste ocean și din ce în ce mai accesate și la noi, rețele sociale te pot ajuta să-ți promovezi blogul, sau mica ori marea afacere și să fii în permanent contact cu vizitatorii sau potențialii clienți

Postează des dar relevant

Este important să postezi des. Asta nu înseamnă însă că trebuie să-ți bombardezi contactele cu informații inutile. Trebuie să postezi în principal ceea ce este relevant pentru domeniul respectiv.Pe Twitter nu este neapărat important să ai un număr mare follow-eri. Mulți dintre aceștia îți dau follow doar în speranța că le vei întoarce favoarea. Important este să ai un număr cât mai mare de follow-eri cu adevărat interesați de mesaje postate de tine.Tot prin intermediul rețelelor sociale, un profesionist poate fi la curent cu subiectele legate de job. Graficienii pot descoperi concepte noi, programatorii se pot pune la curent cu cele mai noi standarde sau limbaje de programare și așa mai departe. De ce nu, și alte categorii profesionale "mai puțin moderne", gen contabili sau juriști, se pot informa prin intermediul acelorași rețele sociale și, nu în ultimul rând, se pot face cunoscuți online.Facebook și Twitter sunt la ora actuală cele mai populare rețele sociale. Principiile următoare se referă în principal la ele, dar pot fi extinse și la alte rețele.

Fii prezent

Regula elementară este să fii prezent în cadrul rețelelor. Adică să-ți faci cont pe rețelele principale.Obligatoriu trebuie să ai cont pe Facebook și Twitter. Dacă activitatea pe care vrei să o promovezi implică materiale multimedia, poți apela și la un site de profil.

Caracteristici si avantaje ale aplicației:

-meniu simplu

-poti posta diverse lucruri utile,imagini

– procesarea rapida a cererilor

-interfete usor de folosit

1.1.OBIECTIVE

Obiectivele principale ale proiectului propus sunt:

1.familiarizarea cu diverse tehnologii PHP,JavaScript,MongoDB de a acumula experiență în dezvoltarea de produse software bazate pe această platformă și de a învăța cât mai multe aspecte noi legate de programare

2.Dezvoltarea unui modul de administrare a activitatilor userilor

Utilizatorul, indiferent de tipul sau va avea un username și o parolă. Pe baza usernameului și parolei se va putea loga în sistem și va avea acces la toate informatiile corespunzătoare.

Userii vor avea un profil,unde isi pot pune poze,pot posta diverse lucruri interesante,pot trimite si receptiona mesaje.

Interfața cu utilizatorul – Se intentioneaza proiectarea interfaței cu utilizatorul în PHP.. Interfata cu utilzatorul se va face prin intermediul browserelor web, care trebuie să suportate cel putin Mozilla Firefox și Internet Explorer

Se intentioneaza utilizarea PhpStorm ca mediu de dezvoltare, acesta fiind un mediu de dezvoltare open-source. Este foarte bine întreținut și este foarte rapid.

1.2.ACTIVITĂȚILE PROIECTULUI

Modulul Utilizator:

-poate primi mesaje

-poate trimite mesaje

-isi poate pune fotografie de profil

-isi poate schimba fotografia de profil

-poate avea o lista de prieteni

-daca nu este logat acesta va trebui sa se logheze

1.3.MEDIUL DE DEZVOLTARE

Pentru dezvoltarea sistemului software se vor utiliza:

-tehnologii web PHP

-HTML

-serverul de baze de date MongoDB

Codul PHP este format din instructiuni – comenzi date catre interpretor, in urma carora se executa ceva. Asa cum s-a mai spus, PHP este folosit in principal pentru a genera cod HTML, asa ca de cele mai multe ori instructiunile folosite sunt cele de afisare. In aplicatii mai complexe se pot insa folosi si instructiuni de conectare la bazele de date, de citire/scriere/manipulare fisiere, intructiuni de trimitere email-uri si altele. Instructiunile se pot grupa in blocuri delimitate de acolade { }. Aceste blocuri, numite si "instructiuni complexe" se comporta ca si cum ar fi o singura instructiune.

Toate instructiunile (in afara de blocuri) trebuie sa fie terminate cu punct si virgula ( ; ). Lipsa acestuia genereaza o eroare.

MongoDB este o bază de date open-source NoSQL scrisă în C++. Aceasta poate conține mai multe baze de date, colecții și indecși. În unele cazuri (baze de date și colecții ) aceste obiecte pot fi create implicit. Odată create, ele se găsesc în catalogul sistemului db.systems.collection, db.system.indexes. Colecțiile conțin documente (BSON). Aceste documente conțin la rândul lor mai multe câmpuri. În MongoDB nu există câmpuri predefinite spre deosebire de bazele de date relaționale, unde există coloanele care sunt definite în momentul în care tabelele sunt create. Nu există schemă pentru câmpurile dintr-un document, acestea precum și tipurile lor pot varia. Astfel nu există operația de „alter table” pentru adăugare de coloane. În practică este obișnuit ca o colecție să aibă o structură omogenă, deși nu este o cerință, colecțiile putând avea structuri diferite. Această flexibilitate presupune ușurință în migrarea și modificarea imaginii de ansamblu asupra datelor.

2.Notiuni introductive

2.1.MongoDB

Bazele de date cloud poarta numele de NoSql-Not only SQL si sunt baze de date non relationale.In mod traditional organizatiile stocheza datele in baze de date relationale pentru a avea acces la ele si pentru a putea desfasura analizele de bussines necesare,cu toate acestea,in ultima vreme multi dezvoltatori au inceput sa implementeze si sa lucreze cu baze de date non relationale numite NoSQL.

Diversele baze de date NoSQL care exista pe piata prezinta diferite abordari,avand in comun faptul ca nu sunt relationale,principalul avantaj este acela ca permit lucrul eficient cu baze de date nestructurate precum multimedia,email,procesoare de text.

Bazele de date NoSQL sunt caracterizate ca noua generatie de baze de date ce indeplinesc mai multe conditii:nu sunt relationale,sunt distribuite,open-source,se caracterizeaza prin scalabilitate orizontala.Bazele de date NoSql nu contin scheme pentru a modela baza de date,prezinta suport pentru replicare, API, nu respecta in intregime ACID si stocheaza cantitati mari de date.

Un motiv important care a dus la aparitia bazelor de date NoSQL consta in nevoia aplicatiilor web de a putea manipula cantitati mari de date pentru a putea sa ramana comperitive.Cantitata de informatie digitala este masurata inexabytes la nivel mondial.

Bazele de date NoSQL ignora principiile RDMBS si nu stocheaza date folisind tabele ci folosind chei de identificare.

Datele din baza de date pot fi regasite in functie de cheile asignate,aceste baze de date imbunatatesc flexibilitatea necesara pentru a asimila modificari in modelul de date.

Datorita faptului ca bazele de date NoSQL nu au o schema de date fixa fac ca acestea sa fie mult mai flexibilesi adaptabile la schimbari de model.

Aceste baze de date au urmatoarele trasaturi:

-abilitatea de a scala orizontal pe mai multe servere

-abilitatea de a replica si distribui datele pe mai multe servere

-call level interface caracterizat prin simplitate

-un model concurential mai slab decat modelul relational(ACID)

-utilizarea eficienta a indexarii distribuite si a RAM pentru o stocare eficienta

-abilitatea de a adauga dinamic noi atribute la inregistrarile existente

O alta caracteristica importanta a sistemelor de baze de date NoSQL este arhitectura “shared nothing” prin care fiecare nod/server este independent,nici unul din ele nu partajeaza memorie sau spatiu.Datorita acestei caracteristici pot fi efectuate un numar mare de operatii de citire/scriere pe secunda.Bazele de date NoSQL reprezinta o trecere catre baze de date superioare cce vor integra flexibilitatea si performantele lor actuale cu modelul relational.Odata cu aparitia bazelor de date NoSQL,dezvoltatorii au oportunitatea de a beneficia de mai multa agilitate in modelul de date abordat.

Aceste bze de date constitue modelul optim pentru aplicatiile web.

Baza de date MongoDB este o bază de date ușor de înțeles și de manipulat. Aceasta este ideală atât pentru proiecte mici, de test, cât și pentru proiecte ce implică un volum mare de date. În opinia mea MongoDB este o bază de date ce va fi folosită din ce în ce mai mult pe viitor datorită tendinței actuale înclinată către aplicații Web.

MongoDB- este o bază de date open-source NoSQL scrisă în C++. Aceasta poate conține mai multe baze de date, colecții și indecși. În unele cazuri (baze de date și colecții ) aceste obiecte pot fi create implicit. Odată create, ele se găsesc în catalogul sistemului db.systems.collection, db.system.indexes. Colecțiile conțin documente (BSON). Aceste documente conțin la rândul lor mai multe câmpuri. În MongoDB nu există câmpuri predefinite spre deosebire de bazele de date relaționale, unde există coloanele care sunt definite în momentul în care tabelele sunt create. Nu există schemă pentru câmpurile dintr-un document, acestea precum și tipurile lor pot varia. Astfel nu există operația de „alter table” pentru adăugare de coloane. În practică este obișnuit ca o colecție să aibă o structură omogenă, deși nu este o cerință, colecțiile putând avea structuri diferite. Această flexibilitate presupune ușurință în migrarea și modificarea imaginii de ansamblu asupra datelor.

MongoDB functioneaza pe baza conceptiilor de colectii si documente.Colectiile reprezinta un grup de documente mongodb.

Instalarea MongoDB este extrem de simplă. Această bază de date poate fi intalată pe sisteme de operare variate, incluzând Windows, Linux, Ubuntu, Debian și OS X. Mediul de dezvoltare în cazul acestui articol a fost reprezentat de MongoDB în Windows 7 Professionam 32 bit. Sistemele 32 bit sunt folosite de obicei pentru testare, deoarece instalările MongoDB pe un astfel de sistem permit o capacitate maximă de stocare de 2G. De menționat este faptul că nu se permite instalarea pe sistemele Windows XP. De asemenea distribuția Mongo include fisierul bin/mongo ce reprezintă un shell interactiv scris în JavaScript și folosit în aceeași manieră în care este folosit SQl Plus pentru baze de date Oracle pentru comenzi în linie de comandă. Shellul este folositor pentru verificări teste si pentru funcțiile administrative.

In windows MongoDB necesita Windows Server 2008 R2, Windows Vista sau mai tarziu .msi.

Instalarea programului MongoDB include toate dependentele software si putem actualiza automat orice versiune mai veche MongoDB utilizand fisierul .msi.

Pentra a instala MongoDB trebuie sa stim pe cati biti avem windowsul instalat, pentru aceasta scriem in cmd: wmic os get osarchitecture

Apoi trebuie sa descarcam cea mai recenta versiune de MongoDB din pagina de descarcari MongoDB:

Dupa ce am descarcat versiune de mongoDB dorita ,localizam fisierul .msi,care de obicei se afla in downloads dosarul implicit.Dam dublu-clic pe fisierul .msi apui dam clic pe run,un set de ecrane vor aparea pentru a ne ghida prin procesul de instalare.Putem instala MongoDB in orice folder.

Pentru a configura MongoDB avem nevoie de un director de date pentru a stoca datele.Calea acestui director de date este implicit \date\db.

Putem crea acest folder din Command Prompt folosind comanda: “md\date\db”

Pentru a incepe sa folosim MongoDB executam mongod.exe din cmd luand calea de unde avem instalat programul astfel:

Aceasta cale o scriem intre ghilimele si adaugam:\mongod.exe, obtinand:

Apoi deschidem inca un cmd in care executam mongo.exe astfel:

2.2.HTML-este prescurtare de la Hyper Text Mark-up Language si reprezinta codul ce sta lal baza crearii paginilor web.Paginile HTML contin elemente care au extensia .html sau .htm.

“Elementele din HTML sunt incadrate de tag-uri.

Protocolul destinat comunicației în cadrul WWW este HTTP , asigurând transferul de informație între un server Web și un client browser Web. Etichetele HTML se folosesc ori de câte ori se dorește o formatare a modului de afișare a informației publicate (scrierea unui text cu bold, alegerea unui anumit fundal al paginii, inserarea unei imagini, afișare tabelată, integrare de sunet sau orice altceva legat de formatarea unei pagini Web). Tag-urile sunt coduri speciale care însoțesc conținutul propriu-zis al paginii Web, stabilind modul în care acesta este afișată pe parte de client apelant. Codul HTML (împreună cu informația propriuzisă), stocat la distanță pe un server Web, este transferat spre un browser Web (folosind HTTP), fiind interpretat corespunzător de către acesta. Multitudinea de browsere Web folosite face ca modul de interpretare al unor etichete HTML să difere uneori de la un caz la altul (din acest motiv, testarea unei aplicații Web trebuie realizată de multe ori pe o gamă largă de browsere). Pentru o primă exemplificare, se consideră eticheta HTML reprezentând tag-ul pentru o afișare bold a unui text. În cazul în care acest tag pereche încadrează un text (vezi exemplul următor), afișarea textului se va realiza cu bold: Acest text este bold! Trebuie remarcată existența și a unui tag complementar atașat la sfârșitul conținutului textual. Acest tag de sfârșit al marcajului închide secțiunea de bold și comunică browser-ului ca formarea impusă se încheie în acest punct. Cele mai multe tag-uri au un tag complementar de închidere a secțiunii delimitate, după cum se va vedea în. Etichetele HTML nu sunt case-sensitive.”

Hypertext-ul trebuie interpretat ca un text care semnaleaza o legatura la o alta informatie web, de obicei un alt document web si este indicat prin subliniere sau culoare, pentru a-l deosebi de textul simplu.

Un document HTML este format dintr0o succesiune de blocuri de informatie.

Aceste blocuri pot fi incluse unul in altul.Un bloc este delimitat de simboluri speciale,numite tag-uri.

Modul in care un document este marcat cu elemente si cu atribute ale acestor elemente se realizeaza in conformitate cu Document Type Definition (DTD).

Sursa autorizata pentru furnizarea de informatii despre HTML si HTML DTD este World Wide Web.

Orice pagina web(document HTML) are in structura trei elemente obligatorii:un element HTML ce cuprinde intregul document si doua sub-elemente ale acestuia :Head si Body.

*Tag-ul <HTML> este primul tag care trebuie sa apara intr-un fisier HTML.Elva incadra alaturi de tag-ul sau corespunzator de inchidere (</HTML>) intreaga pagina web.

*Tag-ul <HEAD> va marca partea de antet a paginii web.Are tag corespunzator de inchidere (</HEAD>)

*Tag-ul<BODY>va incadra continutul paginii web,are tag corespunzator de inchidere(</BODY>)

*Tag-ul <TITLE> marcheaza titlul unui document HTML,cel care va fi afisat in bara de titlu a browser-ului.Acest tag se foloseste numai in interiorul tagului HEAD.Daca acest tag lipseste,atunci in bara de titlu va aparea numele fisierului.

Termenul de Hypertext desemneaza un material sub forma de text si imagine, interconectat intr-o maniera complexa, nesecventiala, in care utilizatorul poate naviga, cauta informatii referitoare l un obiect.

“Legatura (link-ul) este o eticheta foarte importanta in HTML deoarece confera utilizatorului posibilitatea navigarii de la o pagina la alta. Deobicei link-ul este subliniat iar atunci cand suntem deasupra lui cursorul isi schimba forma.

Link-ul este definit cu etichetele <a> si </a> si are atributele:
href – adresa fisierului destinatie
target – in ce fereastra se va deschide fisierul destinatie
title – mica descriere asociata legaturii afisata in momentul in care mouse-ul se afla deasupra legaturii

<a href="adresa-fisier" target="_blank" title="titlu">

2.3.CSS

“CSS prescurtarea de la Cascading Style Sheets, sunt etichete folosite pentru formatarea paginilor web (de exemplu formatare text, background sau aranjare in pagina, etc.).

Beneficiile sintaxei CSS sunt:

-formatarea este introdusa intr-un singur loc pentru tot documentul

-editarea rapida a etichetelor

-datorita introducerii intr-un singur loc a etichetelor se obtine o micsorare a codului paginii, implicit incarcarea mai rapida a acesteia

Sintaxa CSS este structurata pe trei nivele:
-nivelul 1 fiind proprietatile etichetelor din documentul HTML, tip inline
-nivelul 2 este informatia introdusa in blocul HEAD, tip embedded
-nivelul 3 este reprezentat de comenzile aflate in pagini separate, tip externe

Cea mai mare importanta (suprascrie orice alt parametru) o are sintaxa de nivelul 1 iar cea mai mica importanta o are cea de nivelul 3.

Folosirea unui fisier extern sau nivel 3 care sa contina comenzi CSS este foarte practic deoarece poate fi utilizat in mai multe situatii (mai multe fisiere HTML pot folosi acelasi fisier extern CSS) eliminand timpul necesar introducerii codului corespunzator in fiecare pagina si totodata editarea lor intr-un singur loc pentru mai multe fisiere.
Extensia acestor fisiere este .css.
Legatura paginilor HTML cu fisierele extene CSS se face prin introducerea urmatoarei linii:

<link rel="stylesheet" type="text/css" href="fisier_css.css">

Stilurile CSS specificate sunt plasate direct in elemente HTML, capul paginii HTML, sau in foi de stil diferite.O foaie de stil contine o serie de reguli CSS,care selecteaza si defineste modul in care elementele vor fi aranjate intr-o pagina HTML .”

Un singur fisier poate fi utilizat pentru a controla aspectul mai multor pagini HTML facilitand intretinerea acestora.

Fisierul CSS poate reduce dimensiunea fisierului de pagini HTML prin eliminarea aspectului de prezentare a paginii HTML si plasandu-l intr-un fisier CSS.

“Atributele indica urmatoarele: rel – fisierul este tip styleshhet
type – tip text ce contine comenzi CSS
href – fisierul sau adresa fisierului CSS.

Comenzile de nivel 2 sau embedded sunt cele gazduite oriunde intre perechea de etichete <head> si </head> conform sintaxei:

<style type="text/css">
<!–
… comenzi CSS …
–>
</style>

Unde style -specifica unde incepe si unde se termina blocul CSS iar type este folosit pentru a ascunde de browserele vechi, care nu cunosc sintaxa CSS, continutul bloculuistyle.

Comenzile CSS de nivel 1 sau inline sunt cele mai folosite, ele suprascriind orice alte comenzi CSS. Sunt amplasate in interiorul etichetelor HTML aflate in zona BODY si au sintaxa:

<eticheta style="codul CSS dorit">
…textul sau obiectul asupra caruia este aplicat codul CSS…
</eticheta>

Este permisa folosirea comentariilor in CSS astfel:

/* Acesta este un comentariu in CSS */”

2.4.Ajax

Ajax este prescurtarea de la Asynchronous JavaScript si XML.Acesta nu este un singur limbaj, ci un grup de tehnologii folosite pentru a crea o aplicatie Web interactive.Ajax face posibila comunicarea cu serverul fara a fi nevoie sa incarce o pagina noua,reducanduse timpul de asteptare.

AJAX presupune un schimb de date mic intre browser și server, astfel încât să nu mai fie necesară reincărcarea întregii pagini web de fiecare data când userul face o schimbare în aceasta. AJAX reprezintă o colecție de tehnologii, fiecare utilizată și în mod de sine-stătător, dar care combinate permit obținerea unei unelte foarte puternice:

– Prezentarea în mod standard a paginilor, prin HTML sau mai noul XHTML, și CSS (Cascading Style-Sheets) pentru aranjarea în pagina a conținutului;

– Afișare dinamică și interacțiune folosind DOM ,accesat printr-un limbaj de scripting, pentru a modifica în mod dinamic și a asigura interacțiunea cu informația prezentata;

– Schimb bidirecțional de date și manipulare prin XML între client și server, deși orice format poate fi folosit, inclusiv HTML, XSLT sau text simplu;

– Schimbul de date asincron se realizează prin obiectul XMLHttpRequest, deși în unele implementări AJAX se poate folosi un IFrame pentru schimbul de date, sau chiar tag-uri script adăugate dinamic;

– JavaScript folosit pentru a lega toate aceste elemente într-un pachet puternic.

Modelul clasic al aplicațiilor web este următorul: acțiunile utilizatorilor în interfața din browser conduc la o cerere HTTP către serverul web. Serverul efectuează niște procesări (extrage date din baze de date, efectuează calcule, interoghează alte sisteme) și apoi returnează o pagina HTML către client. Este modelul clasic, sincron, dezvoltat odată cu apariția Internetului ca rețea la nivel mondial. Este calea cea mai simplă, dar în timp ce serverul procesează cererea, utilizatorul așteaptă și nu poate interacționa în alt mod cu pagina web.

AJAX elimina aceasta modalitate de interacțiune start-stop-start-stop a Web-ului introducând un nivel intermediar intre utilizator și server – motorul AJAX. Adăugarea unui nou nivel într-o aplicație de obicei o face să lucreze mai greu, dar în acest caz este adevărata afirmația opusă. În loc să încarce pagina la începutul sesiunii, browserul încarcă un motor AJAX, scris în JavaScript și plasat de obicei într-un cadru (frame) invizibil. Acest motor este apoi responsabil atât cu interfața pe care o afișează utilizatorului, cât și cu comunicația cu serverul pentru folosul utilizatorului. Motorul AJAX permite interacțiunea utilizatorului cu aplicația în mod asincron, independent de comunicația cu serverul. Prin urmare utilizatorul nu mai privește o fereastra goala, așteptând ca aceasta să se încarce direct de pe server.

Prima utilizare a termenului AJAX în mod public a fost în februarie 2005. Jesse James Garrett susține că a gândit aceasta denumire realizând necesitatea unui termen simplu, scurt și ușor de pronunțat în momentul când urma să prezinte unor clienți o suită de tehnologii propuse pentru implementare.

Deși termenul AJAX are mai puțin de 9 ani, istoria tehnologiilor care au dus la implementarea acestuia începe acum 15 ani, când Microsoft avea inițiativa în a dezvolta Remote Scripting.

AJAX încearcă totodată să elimine diferențele de funcționalitate și interactivitate existente între o aplicație desktop și o aplicație Web .O soluție AJAX oferă posibilitatea de a utiliza dinamic controale HTML și de a construi o interfața interacționând cu utilizatorul și oferindu-i facilități specifice aplicațiilor desktop [16][18]. AJAX nu este o tehnologie în sine, ci mai mult o colecție de tehnologii grupate în jurul unui nucleu central fundamentat pe JavaScript. Pot fi enumerate următoarele tehnologiile de bază implicate (mai mult sau mai puțin) în construcția unei aplicații AJAX:

– HTML – folosit pentru construcția formularelor Web, ca elemente interactive de bază;

– JavaScript – elementul central a unei aplicații AJAX, coordonând o comunicație asincronă între interfața client și nucleul aplicație rulând pe partea de server (nucleul AJAX, utilizând obiecte dedicate, fiind implementat în JavaScript);

– DHTML (Dynamic HTML) permite o actualizare dinamică a paginii, punând la dispoziție elemente dinamice HTML gen DIV, SPAN lucrând integrat cu HTML;

– DOM (Document Object Model) – utilizat (prin intermediul JavaScript) pentru a conlucra atât cu structura HTML (prin evenimente atașate), cât și (dacă este cazul) cu datele XML returnate de server;

– XML (extensible Markup Language)- utilizat ca format pentru transferul datelor

2.5.PHP-ul este un limbaj de programare ce permite modificarea paginilor web inainte ca acestea sa fie transmise de server catre browserele utilizatorilor,acesta poate genera continut Html pe baza unor fisiere existente sau chiar pornind de la zero pentru a afisa imagini sau orice alt continut accesibil sau sa redirectioneze utilizatorul catre diverse pagini web

Limbajul PHP-codul scris in acest limbaj de programare trebuie inclus cu extensia .php,acest cod trebuie delimitat de restul continutului prin tagul de inceput <?php si tagul de sfarsit?>.Ceea ce se afla in interiorul acestor etichete va fi vazut ca un cod sursa PHP.

Codul php contine instructiuni (comenzi catre interpretor),este folosit in general pentru a genera cod HTML deci instructiunile uzuale sunt cele pentru afisare.Alte instructiuni folosite sunt cele pentru conectarea la baza de date,de citire,de scriere,manipulare de fisiere si altele.instructiunile pot fi grupate in blocuri care sunt delimitate de acolade{},aceste blocuri comportanduse ca o singura instructiune.In afara blocurilor,toate instructiuile trebuie terminate cu punct si virgula altfel se genereaza o eroare.

Ca si instructiuni de afisare se folosesc “print”,”echo”si “printf”.

Scripturile Php afiseaza de cele mai multe ori un text simplu in format HTML mai exact o pagina HTML ce va fi afisata in browser.Php este un limbaj de programare de tip interpretat,fisierele ce contin codul sursa PHP sunt interpretate in momentul executiei de catre PHP.Pentru executia unei portiuni de cod PHP este folosit codul-sursa asa cum a fost scris el, si nu este transformat intr-o forma intermediara (binara sau cod-masina) cum se intampla la Java sau C/C++. Acest lucru ofera flexibilitate, intrucat orice modificare a fisierelor sursa va fi aplicata imediat la urmatoarea executie, fara alti pasi intermediari. Exista si dezavantaje la acest mod de lucru, cum ar fi timp mai mare de executie a codului, dar in anumite situatii avantajele pot cantari mai mult decat dezavantajele. Datorita faptului ca limbajul este unul interpretat, PHP mai este numit si limbaj de scripting.

Interpretorul PHP actioneaza ca o componenta aditionala, o extensie a serverului web care este invocata de ori cate ori o pagina PHP este accesata. Aceasta componenta proceseaza codul-sursa din pagina si apoi transmite rezultatul inapoi la web-server, ajungand in final in browserele utilizatorilor.

In acest limbaj declararea variabilelor se realizeaza odata cu initializarea lor,atribuirea unei valori se realizeaza cu ajutorul instructiunii de atribuire de forma <nume variabila>=<valoare>;

Limbajul PHP este construit in jurul expresiilor, este foarte important in intelegerea corecta a modului in care interpretorul PHP evalueaza si executa secventele de cod.

Cele mai simple expresii in PHP sunt numerele sau sirurile de caractere ,expresiile in limbajul PHP sunt evaluate de la dreapta la stanga. Acestea au o valoare ce poate fi determinata in orice moment, iar aceasta valoare poate fi folosita in operatii (cel mai adesea, la atribuiri). In urma unei atribuiri, o variabila va prelua valoarea expresiei atribuite, devenind ea insasi o expresie. Asadar, avand o instructiune de atribuire de forma:

$a = 1;

Expresiile sunt fundamentul limbajului PHP si aproape orice este o expresie. Ele apar peste tot in codul sursa si pot fi folosite in atribuiri, ca parametrii ai functiilor sau pentru specificarea conditiilor din structurile de control. In cele ce urmeaza vor fi prezentati operatorii limbajului PHP care pot fi aplicati unor expresii si care genereaza (prin compunere) noi expresii.

Operatorii sunt elemente de limbaj ce se aplica expresiilor si dau nastere unor noi expresii. Exista mai multe tipuri de operatori, cu sintaxa si roluri diferite. Toti operatorii vor determina conversia expresiilor componente atunci cand acestea au tipuri diferite de date. Regula de conversie difera de la un tip de date la altul si de la un operator la altul.

In limbajul PHP, la fel ca in oricare alt limbaj de programare, instructiunile cuprinse intr-o secventa de cod-sursa se executa succesiv, una dupa alta. Exista insa anumite instructiuni care modifica ordinea de executie a liniilor de cod. Din acest motiv ele poarta numele de structuri de control, intrucat ele controleaza fluxul de executie.

Structurile de control din PHP sunt: structura alternativa (instructiunea if cu variantele ei), structura de selectie multipla (switch), structuri repetitive (for, while, do… while, foreach), structuri de intrerupere a fluxului (break, continue, return), structura de salt neconditionat (goto), directivele de includere (include, require) si directiva declare.

Functiile sunt blocuri de cod PHP (secvente de cod) bine delimitate si identificate printr-un nume, ce executa un set de operatii. Functiile pot fi executate de mai multe ori in cadrul unui script prin simpla apelare a numelui lor.

Exista functii predefinite, specifice limbajului PHP (cum ar fi print, empty, etc) ce poti fi folosite in orice moment, fara a fi nevoie de vreo actiune speciala; si exista functii definite de utilizator, scrise practic de programatori. Pentru ca acestea sa poata fi folosite este nevoie sa fie declarate (si implementate).

Printre avantajele folosirii functiilor, se numara:reutilizarea codului,modularizare,mentinerea usoara a codului si intelegerea mai usoara a logicii aplicatiei sau a scriptului
PHP contine cateva variabile implicite care sunt pre-populate de PHP in momentul executiei, acestea trebuie definite sau initializate. Sunt disponibile in orice portiune a codului si in orice script PHP si pot fi folosite fara sa fie nevoie de alte pregatiri.Variabile ca $_POST au valori doar in anumite situatii.

$_GET -Vector asociativ ce contine parametrii transmisi prin URL sau printr-un formular.

$_POST-Este similar cu $_GET, doar ca parametrii sunt transmisi prin formulare (forms).

$_REQUEST-Inglobeaza atat $_GET cat si $_POST. 

$_SESSION-Este folosita pentru a defini date ce sunt disponibile atata timp cat utilizatorul acceseaza site-ul, indiferent de paginile vizualizate. In mod normal o variabila este definita doar cand un utilizator cere o pagina. 

$_SERVER-Furnizeaza informatii despre server, pagina ceruta si utilizatorul care acceseaza pagina.

$_ENV-Afiseaza informatii despre mediul curent in care este instalat si ruleaza interpretorul PHP, despre scriptul curent, etc 

$_COOKIE-Folosita pentru a vedea elementele de tip Cookies de la site-ul/pagina curenta.

$_FILES-Folosita la incarcarea fisierelor pe server (file uploads) .

In limbajul PHP sunt o serie de constante ce pot fi folosite in orice moment, acestea sunt populate de catre interpretorul PHP si sunt disponibile in toate fisierele sursa.

PHP_EOL – contine caracterul new-line ce poate fi afisat pentru a formata rezultatul unui script pe mai multe linii.

TRUE, FALSE – constantele de tip boolean ce pot fi folosite la testele din instructiunea if

NULL – referinta nula, utila in "stergerea" unei variabile

PHP_OS – contine identificatorul sistemului de operare pe care ruleaza interpretorul PHP

PHP_VERSION – contine versiunea completa a interpretorului

DEFAULT_INCLUDE_PATH – contine locatiile unde sunt cautate scripturile atunci cand sunt incluse cu include sau require; de obicei, aceasta constanta contine directorul curent si alte cateva locatii

E_ERROR, E_WARNING si altele – contin codurile diverselor tipuri de erori ce pot sa apara.

Variabilele globale folosite in limbajul PHP:

$GLOBALS-pot fi accesate variabilele globale ce sunt accesibile script-ului PHP curent,acest vector este indexat prin numele variabilelor globale.

$_SERVER-contine mai multe variabile care au valori setate de server-ul web,o mare parte din valorile variabilelor acestui vector depind de mediul de executie al script-ului curent.

Elementele acestor variabile sunt:

‘PHP_SELF’-acesta contine numele fisierului in care se executa scriptul curent

‘argv’-reprezinta un array al argumentului trimis catre script

‘argc’- contine o parte din parametrii liniei de comanda trimise catre script

‘GATEWAY_INTERFACE’-returneaza versiunea CGI utilizata pe server

‘SERVER_NAME’-numele serverului de hosting unde se execut scriptul curent

‘SERVER_SOFTWARE’-acesta returneaza un sir de identificare al server-ului dat in header ca raspuns la cerere

‘SERVER_PROTOCOL’ – Numele și versiunea protocolului prin care este cerută pagina

‘ REQUEST_METHOD ‘ – returnează metoda utilizată pentru accesarea paginii

‘ REQUEST_TIME’ – Valoarea timestamp dată la pornirea cererii.

‘ QUERY_STRING ‘ – Sirul de interogare, dacă este, de la pagina care a fost accesată.

‘ DOCUMENT_ROOT ' – Directorul radăcină

‘ HTTP_ACCEPT ‘ – Conținutul header-ului acceptat de la cererea curentă

‘ HTTP_ACCEPT_CHARSET’ – Conține setul de caractere acceptate și care este trimis de header-ul cererii respective, dacă există.

‘ HTTP_ACCEPT_ENCODING ‘ – Conține tipul de encodare

’ HTTP_ACCEPT_LANGUAGE ‘ – Conține limbajul trimis de cererea curentă prin header, dacă exista.

‘ HTTP_CONNECTION’  – Conține informații despre conecsiiunea trimisă de cererea curentă prin header, dacă există.

‘ HTTP_HOST ‘- Conține informații despre host, header-ul de la cererea curentă, dacă există.

‘ HTTP_REFERER ‘ – Adresa paginii este setată de către browser. Nu toate browserele setează această valoare, și chiar unele au posibilitatea de a modifica HTTP_REFERER așa cum vor.

‘HTTP_USER_AGENT ‘ – Conține semnătura browser-ului trimisă prin header la cererea curentă.
‘HTTPS ‘ – Setează o valoare
’REMOTE_ADDR ‘ – Adresa de IP a userului care accesează pagina curentă.

‘ REMOTE_HOST ‘ – Numele hostului userului care vede pagina curentă. Este inversul DNS-ului userului bazat pe REMOTE_ADDR. Serverul web trebuie configurat pentru a crea această variabila.

‘ REMOTE_PORT ‘ – Portul prin care userul comunică cu serverul web.

‘ SCRIPT_FILENAME ‘ – Calea unde se execută scriptul curent

‘ SERVER_ADMIN ‘ – Valoarea dată de directiva SERVER_ADMIN (pentru Apache) în fișierul de configurare al web serverului

‘ SERVER_PORT ‘ – Portul de pe server care este folosit pentru comunicare pe web.

‘ SERVER_SIGNATURE ‘ – Conține un șir care cuprinde versiunea serverului și numele hostului virtual dacă este.

‘ PATH_TRANSLATED ‘ – Calea de bază a sistemului de fișiere

‘ SCRIPT_NAME ‘ – Conține calea către scriptul curent. Acesta este util pentru pagini care trebuiesc definite către ele însuși.

‘ REQUEST_URI ‘ – URI care este dat pentru accesarea paginii curente, de exemplu ' /index.html '.

‘ PHP_AUTH_DIGEST ‘ – Cînd rulați sub Apache ca modul, acțiunea Digest HTTP, valoarea acestei variabile este setată în 'Authorization' header trimis către client .

‘ PHP_AUTH_USER ‘ – actiunea HTTP authentication, această variabilă conține numele userului trimis de către user.

‘ AUTH_TYPE ‘ – Cînd este rulat sub Apache ca modul acțiunea HTTP authenticated , această variabilă seteaza tipul de autentificare.

2.6.JavaScript

Prezentarea limbajului JavaScript- Initial JavaScript a fost dezvoltat de Netscape sub denumirea LiveScript,un limbaj de scriptare care intentiona sa extinda capacitatile HTML si sa ofere o alternativa partiala unui numar mare de scripturi CGI pentru prelucrarea informatiilor din formulare si pentru a adauga dinaism in paginile utilizatorilor.

Dupa lansarea limbajului Java, Netscape a inceput sa lucreze impreuna cu firma Sun pentru a oferi un limbaj de scriptare a carui sintaxa si semantica erau strans legate de Java.

Dupa finalizarea limbajului, Netscape si Sun l-au lansat impreuna

Una din motivatiile care au stat la baza limbajului JavaScript a fost recunoasterea necesitatii ca logica si inteligenta sa existe si pe partea de client,nu doar pe partea de server.

Asigurarea de logica in interiorul browserului il inzestreaza pe client si face ca relatia sa fie cu adevarat sistem client-server.

Pe langa JScript, Microsoft are propriul sau concurent pentru JavaScript,numit VBScript,realizat pentru patrunderea pe Web a actualilor programatori VB.

VBScript este un subset al limbajului Visual Basic.Deoarece Netscape nu recunoaste VBScript,principalele sale utilizari sunt pentru intraneturile(siteurile internet)unde se inregistreaza o abundenta de utilizatori Microsoft Internet Explorer.

“1. JavaScript poate fi intrudus in HTML – De obicei codul JavaScript este gazduit in documentele HTML si executat in interiorul lor. Majoritatea obiectelor JavaScript au etichete HTML pe care le reprezinta, astfel incat programul este inclus pe partea de client a limbajului. JavaScript foloseste HTML pentru a intra in cadrul de lucru al aplicatiilor pentru web.

2. JavaScript este dependent de mediu – JavaScript este un limbaj de scriptare; software-ul care ruleaza de fapt programul este browser-ul web (Firefox, Opera, Netscape Navigator, Internet Explorer, Safari, etc.) Este important sa luam in considerare aceasta dependenta de browser atunci cand utilizam aplicatiiJavaScript.

3. JavaScript este un limbaj in totalitate interpretat – codul scriptului va fi interpretat de browser inainte de a fi executat. JavaScript nu necesita compilari sau preprocesari, ci ramane parte integranta a documentului HTML. Dezavantajul acestui limbaj este ca rularea dureaza ceva mai mult deoarece comenzile JavaScript vor fi citite de navigatorul Web si procesate atunci când user-ul apeleaza la acele functii ( prin completare de formulare, apasare de butoane, etc). Avantajul principal este faptul ca putem mult mai usor sa actualizam codul sursa.

4. JavaScript este un limbaj flexibil – in aceasta privinta limbajul difera radical de C++ sau Java. In JavaScript putem declara o variabila de un anumit tip, sau putem lucra cu o variabila desi nu-i cunoastem tipul specificat inainte de rulare .

5. JavaScript este bazat pe obiecte – JavaScript nu este un limbaj de programare orientat obiect, ca Java, ci mai corect, este "bazat pe obiecte"; modelul de obiect JavaScript este bazat pe instanta si nu pe mostenire.

6. JavaScript este condus de evenimente – mare parte a codului JavaScript raspunde la evenimente generate de utilizator sau de sistem. Obiectele HTML, cum ar fi butoanele, sunt imbunatatite pentru a accepta handlere de evenimente.

7. JavaScript nu este Java – Cele doua limbaje au fost create de companii diferite, motivul denumirii asemanatoare este legat doar de marketing.

8. JavaScript este multifunctional – limbajul poate fi folosit intr-o multitudine de contexte pentru a rezolva diferite probleme: grafice, matematice, si altele.

9. JavaScript evolueaza – limbajul evolueaza, fapt pozitiv care insa poate genera si probleme, programatorii trebuind sa verifice permanent ce versiune sa foloseasca pentru ca aplicatiile sa poata fi disponibile unui numar cat mai mare de utilizatori de browsere diferite.

10.JavaScript acopera contexte diverse – programarea cu acest limbaj este indreptata mai ales catre partea de client, dar putem folosi JavaScript si pentru partea de Server. JavaScript este limbajul nativ pentru unele instrumente de dezvoltare web, ca Borland IntraBuilder sau Macromedia Dreamweaver.”

Intr-un script (sau program) se folosesc date constante dar si date variabile care isi schimba valorile in timpul executei programului. Aceste date se numesc variabile.

Variabila = numele unei locatii din memoria calculatorului, folosita pentru a memora date.

Modul cel mai simplu de a folosi si a face referire la o astfel de data variabila este de a o denumi. Numele variabilei permite accesul la valoarea ei precum si schimbarea valorii daca este necesar.
Se poate crea o variabila si sa-i atribuim o valoare prin doua metode: 
– Cu declaratia var

var nume = valoare

– Fara declaratia var

nume = valoare

– Unde 'nume' este numele variabilei iar 'valoare' este valoarea pe care i-o atribuim. 

Tipuri de variabile – Spre deosebire de alte limbaje (cum sunt Pascal sau C), JavaScript nu are tipuri fixe de date, adica permite schimbarea tipului unei variabile in cadrul scriptului, acesta poate recunoaste singur cand datele sunt de tip "sir", numerice sau alt tip. 
Pentru a lucra cu datele introduse intr-un script si a manipula valorile variabilelor se folosesc operatori 
Operatorii sunt simboluri si identificatori care determina felul in care sunt modificate datele si modul in care este evaluata o combinatie de expresii si variabile. 
JavaScript recunoaste :operatori binari – care necesita existenta a doi operanzi in expresie si operatori unari – care au nevoie doar de un operand.

Operatori sunt de mai multe tipuri:

* Operatori aritmetici 
– Operatori de atribuire 
– Operatori de comparare 
– Operatori logici (numiti si booleeni) 
– Operatori pentru siruri 
– Operatori typeof 
– Operator conditional ? 
– Operatori pentru functii 
– Operatori pentru structuri de date

Aspecte fundamentale ale JavaScript

a)JavaScript poate fi incorporat in Html

De obicei,codul JavaScript este gazduit in documente HTML si executat din interiorul lor.

Cele mai multe obiecte JavaScript au etichete HTML pe care le reprezinta, astfel incat programul este inclus la nivelul esential, pe prtea de client, al limbajului.

JavaScript foloseste HTML-ul ca modalitate de a sari in cadrul de lucru al aplicatiilor pentru Web si extinde capacitatile normale,asigurand evenimente pentru etihetele HTML si permitand acestui cod cndus de evenimente sa se execute din interiorul sau.

b)JavaScript este dependent de mediu-JavaScript este un limbaj de scriptare,nu un instrument in sine si pentru sine.Cand este inclus intr-un document HTML,JavaScript depinde de browser pentru a fi recunoscut.Daca browserul nu il recunoaste programul va fi ignorat, ba chiar mai rau –daca nu tinem seama de browserele neacceptate , programul JavaScript in sine pote fi afisat ca text pe pagina HTML.

c)JavaScript este un limbaj interpretat

Ca majoritatea limbajelor de scriptare, JavaScript este interpretat de browser inainte de a fi excutat.Dezavantajul unui limbaj interpretat este ca executarea programului dureza mai mult,deoarece browserul compileaza instructiunile in timpul rularii, chiar inainte sa le execute.

Avantajul consta in faptul ca este mult mai usor de actualizat codul sursa.

d)JavaScript este un limbaj flexibil in privinta tipului de date

JavaScript difera mult de limbajele stricte in privinta tipului de date, ca Java sau C++, in care trebuiesc mult mai flexibil.Putem declara vriabilele de un anumit tip, dar nu suntem obligati sa facem aceasta declarare; putem lucra cu o variabila, desi nu-i cunoastem tipul specific inainte de rulare.

e)JavaScript este un limbaj bazat pe obiecte

Netscape si altii se refera la JavaScript ca la un limbaj de programare orientat pe obiecte(OOP), dar aceasta este o deformare a adevaratului inteles al sintagmei OOP.JavaScripr este un limbaj bazat pe obiecte.Vom lucra cu obiecte predefinite care incapsuleaza date si comportamente(metode), dar nu le vom putea subclasa.

f)JavaScript este condus de evenimente

Mare parte din codul JavaScript va raspunde la evenimente generate de utilizator sau sistem.In sine, limbajul JavaScript este echipat pentru a trata evenimente.

Obiectele HTML sunt imbunatatite pentru a accepta handlere de evenimente.

g)JavaScript nu este Java

Cele doua limbaje au fost create de companii diferite, iar motivul principal pentru similitudinea denumirilor este legat exclusiv de marketing.Cateva diferente intre cele doua limbaje ar fi:

-JavaScript este strans integrat in HTML,pe cand o miniaplicatie Java este legata la un document HTML prin eticheta <applet>.

-Java este un limbaj mai robust si mai complet, fiind strict in privinta tipului de date,realmete orientatspre obiecte

-Java este folosit pentru miniaplicatii sau pentru aplicatii complete, pe cand JavaScript este folosit in primul rand pentru scripturi.

h)JavaScript este multifunctinal

Principalele sale scopuri sunt:

-infrumuseteaza si anima paginile HTML statice prin efecte speciale si animatie

-valideaza date fara a trece totul serverului

-dezvolta aplicatii pe partea de client

i)JavaScript evolueza

Datorita evolutiei rapide a limbajului, va trebui sa ne intrebam nu numai daca browserul recunoaste JavaScript, ci si care versiune o recunoaste.

j)JavaScript acopera diferite contexte

Programarea in JavaScript se indreapta mai ales spre scriptrea pe partea de client, dar se poate folosi si pe partea de server in Netscape Enterprise Server si in cadrul de lucru Active Server Pages de la Microsoft.Versiunile recente de Windows accepta JavaScript in mediul Windows Script Host(WSH).

Elemente fundamentale ale limbjului JavaScript

*Evenimente-una din caracteristicile-cheie ale limbajului JavaScript este capacitatea sa de a intercepta un numar limitat de actiuni ale utilizatorului, cunoscute majoritatii programatorilor ca evenimente.Unele elemente HTML reactioneaza deja la evenimente cum ar fi executarea unui clic pe elementul familiar de legatura care duce la alt document HTML.

Cand trecem cursorul mouse-ului peste textul sau imaginea care constituie legatura, cursorul se modifica dintr-o sageata intr-o mana micuta.Unele browsere reactioneaza si prin afisarea in bara de stare a adresei URL de destinatie.JavaScript il numeste eveniment MouseOver si reactioneaza ori de cate ori trecem cursorul mouse-ului peste element.

Daca executam click pe oricare parte a legaturii, browserul raspunde trimitandu-ne la o locatie diferita de pe Web sau deschizand un nou fisier.

Actiunea este denumita eveniment Click si este declansata ori de cate ori se executa click pe legatura , HTML intercepteaza aceste evenimente si browserul reactioneaza intotdeauna in acelasi mod.

*Tokenuri-sunt cele mai mici cuvinte, expresii sau caractere individuale pe care le poate intelege JavaScript. Cand JavaScript este interpretat, browserul analizeaza scriptul, identificand tokenurile si ignorand comentriile si spatiile albe.Tokenurile JavaScript se clasifica in patru categorii : identificatori,cuvinte cheie,elemente literale si operatori.

Sintaxa unui limbaj este setul de reguli si restrictii privind modalitatea in care se pot combina tokenurile.

*Variabile-o variabila este numele atribuit unei locatii din memoria calculatorului unde sunt stocate datele.Numele unei variabile JavaScript este alcatuit din una sau mai multelitere,cifre sau liniute de subliniere.Numele nu poate sa inceapa cu o cifra, literele include toate caracterele majuscule,de la “A” la “Z” si toate caracterele minuscule de la “a” la “z”.JavaScript diferentiaza majusculele de minuscule.

Constante

O constanta este o variabila care pastreaza aceeasi valoare pe toata durata executarii unui program.JavaScript foloseste constante incorporate pentru a reprezenta valori folosite de operatiile matematice uzuale, asa cum este pi.Ele pot fi accesateprin intermediul obiectului match.

Constantele definite de utilizator sunt variabile pe care le defineste programatorul si ale caror valori nu se pot modifica.

De obicei, un limbaj de programare care recunoaste constante definite de utilizator se asigura ca nici o alta parte a aplicatiei nu poate modifica valoarea unei constante dupa ce aceasta a fost definita.

Tentativa de modificare determina o eroare.JavaScript nu va efectua insa aceasta verificare , chiar daca nu exista nici o modificare prin care sa determinam JavaScript sa se asigure ca o variabila nu este modificata, putem sa folosim variabilele care sa aiba valori ce sunt folosite in mod repetat intr-un script.

Inlocuind instantele multiple ale unei valori obisnuite cu o variabila,se va usura actualizarea ulterioara a scriptului, trebuie doar sa modificam initializarea variabilei si intregul script este actualizat.

Culori

JavaScript accepta culorile care sunt folosite la construirea paginilor HTML.

Specificarea unei culori se face cu ajutorul unor elemente literale de tip sir care pot fi atribuite unor proprietati specifice ale obiectelor.

Se poate folosi fie numele culorii, fie echivalentul ei hexazecimal.

Comentarii

Cele doua solutii de care dispunem pentru a plasa comentarii in codul JavaScript sunt metodele folosite si in limbajele C/C++.

Pentru comentarii care au doar o linie de text se folosesc 2 caractere slah consecutive.

Exemplu:

//Acesta este un comentariu pe o singura linie

Pentru blocuri de comentarii mai mari se folosesc caracterele /* si */.

E xemplu:

/* Acesta este un alt comentariu

pe mai multe

linii*/

Functii

Functia este un script care poate fi apelata oricand folosindu-I numele.

Astfel capacitatile limbajului JavaScript sporesc in doua modalitati.

In primul rand reprezinta o modalitate excelenta de a stabili rularea unui script la un moment ulterior.

Alt avantaj il reprezinta capacitatea de refolosire a scripturilor fara a scrie in mod repetat aceleasi linii de cod.Se recomanda declararea functiilor in blocul <head > al docummentului HTML,astfel functa va fi incarcata inainte de a fi executata de corpul documentului.

3.Aplicatia

3.1 MongoDB

Deschiderea programului pentru a lucra:

-deschidem o prima fereastra in cmd si scriem mongod

-rezultatul este urmatorul:

-apoi deschidem inca o fereastra cmd in care scriem mongo

-rezultatul este urmatorul:

Pentru a utiliza baza de date scriem comanda:

show dbs

-rezultatul este urmatorul

Apoi pentru a vedea ce avem in baza de date twitter scriem urmatoarea comanda:

show collections

Pentru a vizualiza continutul colectiilor scriem in cmd urmatoarea comanda:

db.nume_colectie.find()

Rezultatul pentru colectia media este urmatorul:

Rezultatul pentru posts si media este urmatorul

Rezultatul pentru system.indexes,media si post:

Rezultatul pentru users,media,posts si system.indexes

Bibliografie

http://php.punctsivirgula.ro/basics/

http://www.drogoreanu.ro/tutorials/css.php

http://www.marplo.net/javascript/introducere.html

Cum să foloseşti eficient reţelele de socializare

http://www.tutorialspoint.com/jsf

http://docs.mongodb.org/manual/tutorial/getting-started/

http://torente.xhost.ro/data/programe/Limbajul_JavaScript.html

https://javasriptt.wordpress.com/author/gedubuzz/

http://masterat.fcim.utm.md/AJAX_Test/Theza_Guler.htm

http://www.marplo.net/javascript/introducere.html

http://floodofgames.ucoz.ro/forum/35-236-1

http://www.scrigroup.com/calculatoare/java/Introducere-in-lumea-JavaScrip93296.php

http://www.ace.ucv.ro/pdf/stiri/2012_ACE_ModelProiectDiploma.doc

http://ciobanu.cich.md/lectii_view.php?id=16

http://ace.ucv.ro/pdf/stiri/2012_ACE_ModelLucrareDisertatie.doc

http://www.rasfoiesc.com/educatie/informatica/java/JavaScript-si-Perl-Caracterist25.php

http://ro.wikipedia.org/wiki/MongoDB

http://all-about-life.ucoz.ro/index/retele_de_socializare/0-135

http://ciobanu.cich.md/lectii_view.php?id=7

http://www.scrigroup.com/calculatoare/php/Limbajul-PHP-Notiuni-generale35996.php

http://ro.wikipedia.org/wiki/PHP

http://biblioteca.regielive.ro/licente/calculatoare/comunicatii-de-date-in-retea-cu-microcontroller-349653.html

http://dull-app.blogspot.com/

http://www.hfdesign.ro/notiuni-de-baza-css/

http://dull-app.blogspot.com/2013/06/documentatie.html

http://www.webtools.3xforum.ro/post/261/1/Notiuni_de_baza/

http://archive-ro.com/ro/e/etutoriale.ro/2013-02-23_1483048_6/Tutorial_complet_HTML/

http://archive-ro.com/ro/d/drogoreanu.ro/2013-05-03_2009908_2/Tutoriale_networking/

Cum să foloseşti eficient reţelele de socializare

http://www.tutorialeonline.net/ro/article/variabile-predefinite

http://agamers.ro/forum/topic/7092-php/

http://php.punctsivirgula.ro/arrays/

http://colectioncrative.blogspot.com/2014/04/notiuni-de-baza.html

http://www.europacs.ro/forum/viewtopic.php?f=139&t=15324&view=previous

http://archive-ro.com/ro/e/etutoriale.ro/2013-02-23_1483048_12/Asigura_te_ca_pagina_ta_se_incarca_repede/

http://www.marplo.net/javascript/notiuni_de_baza.html

http://rria.ici.ro/ria2012_4/art04.php?lang=ro

http://www.e-referate.ro/referate/Programare_Web_-_JavaScript2013-07-30.html

http://www.scritub.com/stiinta/informatica/Tehologii-Web-in-domeniul-recr32576.php

http://php.punctsivirgula.ro/operatori/

http://trag.ro/forum/index.php?/topic/5935-trag-phpbb3-manualul-phpbb/

http://upm.ro/facultati_departamente/stiinte_litere/Docs/Declaratie%20absolvent.docx

http://php.punctsivirgula.ro/serverside/

http://forumscripts.blogspot.com/

http://spidersolutions.ro/blog/scurta-prezentare-ajax/8http://code.google.com/p/public-transport-monitor/source/browse/trunk/doc/JVA+lyx.lyx?r=7

http://php.punctsivirgula.ro/basics/

http://www.heker.ro/forum/topic/4879-taguri-php-instructiuni-punct-si-virgula/

Similar Posts