Va rugam dezactivati programul ad block pentru a vizualiza pagina!

Rezultate pentru tag: aplicatii




Proiecții ortogonale pe un plan

Proiecția unui punct pe un plan. Proiecția unui segment pe un plan. Lungimea proiecției unui segment pe un plan. Proiecția unei drepte pe un plan.

Teorema celor trei perpendiculare

Distanța de la un punct la o dreaptă în spațiu. Teorema celor trei perpendiculare. Enunțul și demonstrația teoremei celor trei perpendiculare. 

Prisma triunghiulară regulată

Aria prismei și volumul prismei. Deducerea formulelor de calcul pentru arie prismă triunghiulară și volum prismă triunghiulară regulată. Aria laterală a prismei triunghiulare regulate. Aria totală a prismei triunghiulare regulate. Volumul unei prisme triunghiulare regulate.

Propagarea luminii. Reflexia si refracţia.

Propagarea luminii în medii omogene: constanţa vitezei şi conceptul de rază de lumină. Legile reflexiei şi refracţiei. Reflexia totală: definiţie, aplicaţii.

Lama cu feţe plan paralele.

Aplicaţii ale interferenţei nelocalizate. Lama cu feţe plan paralele: franjele de egală înclinare. Stratul antireflex.

Teoria cinetico-moleculara: aplicaţii.

Deducerea legii Dalton. Extinderea modelului gazului ideal la substanţe reale. Clasificarea stărilor de agregare.

Generarea tensiunii alternative.

Energia câmpului magnetic. Exemplu: bobina. Generarea tensiunii electrice alternative. Aplicaţii.

Aplicaţii: radiaţiile X.

Radiaţiile X de frânare şi caracteristice: producere şi proprietăţi. Interacţiunea cu substanţa. Aplicaţii.

Aplicaţii: laseri.

LASERi: emisia stimulată, inversia de populaţie. Tehnologii de construcţie, proprietăţi, aplicaţii.

Aplicaţii ale diodei. Tranzistorul.

Aplicaţii ale diodei: dioda varicap, redresarea curentului alternativ. Tranzistorul cu efect de câmp.

Acceleratoare circulare de particule.

Acceleratoare circulare: ciclotronul şi sincrotronul. Radiaţia sincrotronică. Aplicaţii.

Concentraţia procentuală - aplicaţii

Soluții, dizolvare. Concentrație procentuală. Masă dizolvată, masa soluției. Aplicații.

Concentraţia molară - aplicaţii

Calculul concentraţiei molare a unei soluţii. Regula de trei simplă. Molaritate. Aplicaţii.

Echilibre chimice – legea acţiunii maselor

Reacţia directă, reacţia inversă. Procedeul Haber, obţinerea amoniacului. Starea de echilibru chimic. Variaţia în timp a concetraţiilor şi a vitezelor de reacţie. Reacţii reversibile. Legea acţiunii maselor. Constanta de echilibru. Aplicaţii – legea acţiunii maselor. 

Echilibre chimice – aplicaţie

Viteza reacţiei directe, viteza reacţiei inverse. Starea de echilibru chimic. Constanta de echilibru. Aplicaţii. 

Intervale de numere reale

Noțiunea de interval. Intervale mărginite de numere reale, intervale nemărginite.  Interval deschis, interval închis. Legătura dintre intervale și modul.  Determinarea soluțiilor unor inecuații (în mulțimea numerelor reale) care au necunoscuta în modul.

Ecuaţia de gradul al doilea

Forma unei ecuații de gradul doi. Deducerea formulelor care apar în rezolvarea unei ecuații de gradul al doilea.

Drepte paralele intersectate de o secantă

Drepte paralele intersectate de o secantă. Unghiuri alterne interne. Unghiuri alterne externe. Unghiuri corespondente. Unghiuri interne de aceeaşi parte a secantei. Unghiuri externe de aceeaşi parte a secantei. 

Proprietăţile triunghiului isoscel

Proprietăţile triunghiului isoscel. Un triunghi isoscel are două unghiuri congruente. Într-un triunghi isoscel, mediana, înălțimea, bisectoarea și mediatoarea corespunzătoare bazei coincid.

Proprietăţile triunghiului echilateral

Triunghiul echilateral. Un triunghi echilateral are toate unghiurile congruente. Într-un triunghi echilateral, toate liniile importante ce pornesc din același vârf coincid.

Paralelogramul

Patrulaterul convex care are laturile opuse paralele se numește paralelogram. Proprietățile paralelogramului. Modalități de a demonstra că un patrulater este paralelogram.

Rombul

Paralelogramul care are două laturi consecutive congruente se numește romb. Proprietățile rombului. Modalități de a demonstra că un patrulater este romb.

Linia mijlocie în triunghi

Linie mijlocie în triunghi este un segment care uneşte mijloacele a două laturi ale triunghiului. Proprietățile liniei mijlocii.

Teorema fundamentală a asemănării

O paralelă la una din laturile unui triunghi formează cu celelalte două laturi (sau cu prelungirile lor) un triunghi asemenea cu cel dat.

Teorema înălţimii

Într-un triunghi dreptunghic, lungimea înălțimii corespunzătoare unghiului drept este medie proporțională între lungimile proiecțiilor catetelor pe ipotenuză. Teorema înălțimii și reciproca.

Teorema lui Pitagora

Într-un triunghi dreptunghic, suma pătratelor lungimilor catetelor este egală cu pătratul lungimii ipotenuzei.

Unghi înscris în cerc

Unghi cu vârful pe cerc. Măsura unui unghi înscris în cerc. Unghi înscris în semicerc. Triunghi înscris în cerc.

Patrulater înscris în cerc; patrulater inscriptibil

Un patrulater se numește patrulater înscris în cerc dacă vârfurile sale aparțin cercului. În acest caz cercul se numește cerc circumscris patrulaterului. Proprietatea unui patrulater înscris în cerc. Patrulater inscriptibil.

Teoreme de paralelism

Enunțarea unor teoreme importante de paralelism în spațiu. Modalități de a demonstra că două plane sunt paralele.

Alcani – nomenclatură, proprietăţi fizice, aplicaţii practice

Alcani, izoalcani. Metan, etan, propan, butan, izobutan. Izomerie de catenă. Serie omoloagă. Corelaţia dintre structura alcanilor şi proprietăţile fizice (starea de agregare, temperatura de fierbere).

Alchene – nomenclatură, proprietăţi fizice, aplicaţii practice

Serie omoloagă. Nomenclatură. Atomi de carbon vinilici şi atomi de carbon alilici. Caracteristicile legăturii duble. Izomerie geometrică (izomeri cis-trans). Izomerie de catenă. Izomerie de funcţiune. Izomerie de poziţie. Proprietăţi fizice

Alchene – proprietăţi chimice

Reacţii specifice hidrocarburilor nesaturate – reacţii de adiţie, de oxidare şi de polimerizare. Hidrogenarea alchenelor, halogenarea alchenelor, adiţia hidracizilor la alchene, adiţia apei la alchene. Oxidare blândă şi oxidare energică. Reacţii comune cu hidrocarburile saturate – reacţii de ardere, reacţii de substituţie. Regula lui Markovnikov. Polimeri vinilici. 

Alcadiene – nomenclatură, proprietăţi fizice şi chimice

Nomenclatură. Clasificarea alcadienelor în funcţie de poziţia legăturilor duble în catenă. Adiţia hidrogenului. Adiţia halogenilor. Adiţia 1,2 şi adiţia 1,4. Reacţia de polimerizare. Reacţia de copolimerizare. Obţinerea butadienei şi a izoprenului. 

Arene – nomenclatură, clasificare şi proprietăţi fizice

Hidrocarburi aromatice. Structuri de rezonanţă (structuri limită). Benzenul. Modelul Kékulé. Structura inelului benzenic. Caracter aromatic. Clasificarea arenelor. Nomenclatură. Poziţiile orto-, meta-, şi para-. Proprietăţi fizice. 

Reacţii de polimerizare

Importanţa reacţiilor de polimerizare. Schema generală a unei reacţii de polimerizare. Proprietăţile polimerilor. Procedee de polimerizare – polimerizare radicalică, reacţia de policondensare. Radicali liberi. Polimerizarea radicalică. Polimeri vinilici. Reacţia de coplimerizare. Copolimeri. 

Reacţii de esterificare

Obţinerea esterilor. Derivaţi funcţionali ai acizilor carboxilici. Aplicaţii industriale ale reacţiilor de esterificare. Obţinerea aspirinei. Acidul acetilsalicilic. 

Reacţii de condensare şi policondensare

Reacţii de condensare între compuşii carbonilici – condensarea aldolică şi crotonică. Componentă carbonilică şi componentă metilenică. Reacţii de policondensare. Obţinerea şi proprietăţile fenoplastelor – bachelita şi novolacul. 

Fenoli

Clasificarea fenolilor. Nomenclatură. Caracteristicile grupei hidroxil fenolice. Proprietăţi fizice. Proprietăţi chimice – reacţii specifice grupei hidroxil şi reacţii specifice nucleului aromatic. Reacţia cu metalele alcaline. Reacţia cu hidroxizii alcalini. Reacţii de substituţie la nucleul aromatic – reacţia de sulfonare şi reacţia de nitrare a fenolului. Aplicaţii practice. 

Derivaţi halogenaţi – importanţă, proprietăţi fizice

Aplicaţii practice ale derivaţilor halogenaţi. Clasificare. Nomenclatură. Caracteristicile legăturilor C – halogen. Proprietăţi fizice. Obţinere.

Amine

Clasificarea şi nomenclatura aminelor. Caracteristicile grupei funcţionale amino. Proprietăţi fizice. Caracterul bazic al aminelor. Amine aromatice. Reacţii de substituţie. Reacţii de alchilare. Obţinerea sărurilor de arendiazoniu. Aplicaţii practice. 

Compuşi carbonilici

Grupa funcţională carbonil. Aldehide şi cetone. Nomenclatura aldehidelor. Nomenclatura cetonelor. Proprietăţi fizice. Reacţii de adiţie – adiţia hidrogenului. Reacţii de oxidare. Aplicaţii practice. 

Zaharide - Glucoza

Compuşi organici cu acţiune biologică. Compuşi cu mai multe grupe funcţionale. Zaharide – polihidroxialdehide şi polihidroxicetone. Monozaharide. Zaharide de policondensare. Glucoza. Structura zaharidelor. Proiecţii Fischer – notaţii D şi L. Atom de carbon asimetric. Importanţa biologică a glucozei. Aplicaţiile practice ale glucozei.

Zaharide – produşi de policondensare ai monozaharidelor

Zaharoza – carcateristici şi aplicaţii practice. Zahăr rafinat şi zahăr nerafinat. Amidonul. Amiloza şi amilopectina. Surse de amidon. Fotosinteza. Celuloza. Surse de celuloză. Proprietăţi şi aplicaţii practice. 

Latura, apotema și aria pătratului înscris în cerc

Latura pătratului în funcție de raza cercului circumscris. Apotema pătratului în funcție de raza cercului circumscris. Formula pentru arie pătrat în funcție de raza cercului circumscris.

Latura, apotema și aria hexagonului regulat înscris în cerc

Latura unui hexagon regulat în funcție de raza cercului circumscris. Formula pentru apotemă hexagon regulat în funcție de raza cercului circumscris. Formula pentru arie hexagon regulat în funcție de raza cercului circumscris. Perimetrul hexagonului.

Legea lui Hess. Entalpia de formare standard.

Termochimie. Variaţia entalpiei în reacţiile endoterme. Variaţia entalpiei în reacţiile exoterme. Legea aditivităţii căldurilor de reacţie – Legea lui Hess. Condiţii standard de reacţie. Entalpia molară de formare standard. 

Aplicaţii

Căldura specifică, c. Căldura specifică molară. Exemple de calcul pentru capitolul termochimie. 

Aplicaţii

Timp de înjumătăţire. Unităţi de măsură pentru constanta de viteză. Exemple de calcul. 

Paralelipipedul dreptunghic

Aria paralelipipedului și volumul paralelipipedului. Deducerea formulelor de calcul pentru arie paralelipiped și volum paralelipiped dreptunghic. Aria laterală a paralelipipedului. Aria totală a paralelipipedului. Volumul unui paralelipiped dreptunghic.

Cubul

Aria cubului și volumul cubului. Deducerea formulelor de calcul pentru arie cub și volum cub. Aria laterală a cubului. Aria totală a cubului. Volumul cubului.

Proprietățile logaritmilor

Propritățile logaritmilor: logaritmul produsului, logaritmul raportului, logaritmul unei puteri. Formula pentru schimbarea bazei logaritmului și alte formule logaritmice. Operații cu logaritmi.

Ecuații de gradul I

Forma generală e ecuațiilor de gradul I. Modalitatea teoretică de rezolvare a unei ecuații de gradul întâi. Interpretarea geometrică pentru ecuația de gradul I. Ecuații cu parametru real- exerciții.

Inecuații de gradul I

Forma generală a inecuațiilor de gradul I cu o necunoscută. Modalitatea teoretică de rezolvare a unei inecuații de gradul întâi. Ecuații cu modul, explicitarea modulului.

Piramida triunghiulară regulată

Aria piramidei și volumul piramidei. Deducerea formulelor de calcul pentru arie piramidă triunghiulară regulată și volum piramidă triunghiulară regulată. Aria laterală a piramidei triunghiulare regulate. Aria totală a piramidei triunghiulare regulate. Volumul unei piramide triunghiulare regulate.

Piramida patrulateră regulată

Aria piramidei și volumul piramidei. Deducerea formulelor de calcul pentru arie piramidă patrulateră regulată și volum piramidă patrulateră regulată. Aria laterală a piramidei patrulatere regulate. Aria totală a piramidei patrulatere regulate. Volumul unei piramide patrulatere regulate.

Piramida hexagonală regulată

Aria piramidei și volumul piramidei. Deducerea formulelor de calcul pentru arie piramidă hexagonală regulată și volum piramidă hexagonală regulată. Aria laterală a piramidei hexagonale regulate. Aria totală a piramidei hexagonale regulate. Volumul unei piramide hexagonale regulate.

Trunchiul de piramidă regulată

Aria trunchiului de piramidă și volumul trunchiului de piramidă. Deducerea formulelor de calcul pentru arie trunchi de piramidă regulată și volum trunchi de piramidă regulată. Aria laterală a trunchiului de piramidă regulată. Aria totală a trunchiului de piramidă regulată. Volumul unui trunchi de piramidă regulată.

Cilindrul circular drept

Descrierea cilindrului circular drept. Elementele unui cilindru circular drept. Înălțimea cilindrului. Generatoarea unui cilindru. Secțiunea axială a cilindrului. Desfășurarea unui cilindru circular drept. Aria cilindrului și volumul cilindrului. Deducerea formulelor de calcul pentru arie cilindru circular și volum cilindru circular. Aria laterală a cilindrului circular drept. Aria totală a cilindrului circular drept. Volumul cilindrului circular drept.

Conul circular drept

Descrierea conului circular drept. Elementele unui con circular drept. Înălțimea conului. Generatoarea conului. Secțiunea axială a conului. Desfășurarea unui con circular drept. Aria conului și volumul conului. Deducerea formulelor de calcul pentru arie con circular și volum con circular. Aria laterală a conului circular drept. Aria totală a conului circular drept. Volumul conului circular drept.

Trunchiul de con circular drept

Descrierea trunchiului de con circular drept. Elementele unui trunchi de con circular drept. Înălțimea trunchiului de con. Generatoarea trunchiului de con. Secțiunea axială a trunchiului de con. Desfășurarea unui trunchi de con circular drept. Aria trunchiului de con și volumul trunchiului de con. Deducerea formulelor de calcul pentru arie trunchi de con și volum trunchi de con. Aria laterală a trunchiului de con circular drept. Aria totală a trunchiului de con circular drept. Volumul trunchiului de con circular drept.

Sfera

Descrierea unei sfere. Formulele de calcul pentru arie sferă și volum sferă. Probleme cu aria sferei și volumul sferei.

Reprezentarea geometrică a numerelor complexe

Imaginea geometrică a unui număr complex. Interpretarea geometrică a modulului unui număr complex. Interpretarea geometrică a sumei și a diferenței a două numere complexe. Interpretarea geometrică a numerelor complexe opuse și a numerelor complexe conjugate.

Metoda inducției matematice

Inducție matematică. Etapele principiului inducției matematice (etapa de verificare, etapa de demonstrație). Demonstrația unei propoziții matematice folosind principiul inducției matematice.

Șiruri monotone

Șir crescător, șir descrescător, șir monoton. Definiția șirurilor monotone. Metode prin care se poate studia monotonia șirurilor. Exemple de șiruri monotone.

Proprietățile progresiei geometrice

Termenul general al unei progresii geometrice în funcție de primul termen și de rația progresiei. Condiția ca n numere să fie în progresie geometrică. Suma primilor n termeni ai unei progresii geometrice.

Funcții mărginite

Imaginea unei funcții, noțiunea de funcție mărginită. Graficul unei funcții mărginite. Mărginirea unei funcții numerice.

Monotonia funcțiilor numerice

Funcție crescătoare, funcție descrescătoare, funcție monotonă. Exemple de funcții monotone. Modalități de a studia monotonia funcțiilor. Intervale de monotonie. Exerciții de stabilire a monotoniei funcțiilor.

Compunerea funcțiilor

Compunerea funcțiilor. Proprietăți ale compunerii funcțiilor. Exerciții- funcții compuse.

Adunarea vectorilor

Adunarea vectorilor: regula paralelogramului, regula triunghiului, regula poligonului. Proprietățile operației de adunare a vectorilor.

Hidroliza sărurilor

Sărurile - compuși ionici. Comportamentul anionilor în apă. Comportamentul cationilor în apă. Reacția de hidroliză. Săruri care formează soluții neutre (săruri provenite de la acizi tari și baze tari). Săruri care formează soluții acide (săruri provenite de la acizi tari și baze slabe). Săruri care formează soluții bazice (săruri provenite de la acizi slabi și baze tari). Săruri provenite de la acizi slabi și baze slabe. Hidroliza azotatului de sodiu (NaNO3), hidroliza clorurii de amoniu (NH4Cl), hidroliza sulfurii acide de sodiu (NaHS), hidroliza cianurii de amoniu (NH4CN). Aplicații; calculul pH-ului unei soluții de sare. 

Proprietățile progresiei aritmetice

Termenul general al unei progresii aritmetice în funcție de primul termen și de rație. Proprietățile progresiei aritmetice. Condiția ca n numere sa fie în progresie aritmetică. Suma primilor n termeni ai unei progresii aritmetice. 

Funcția de gradul I

Funcția de gradul întâi. Graficul funcției de gradul I, intersecția cu axele. Monotonia unei funcții de gradul I. Reprezentarea grafică a funcției de gradul I, funcții definite pe ramuri.

Reducerea la primul cadran

Calculul funcțiilor trigonometrice folosind formule de reducere la primul cadran. Trecerea din cadranul II în cadranul I. Trecerea din cadranul III în cadranul I. Trecerea din cadranul IV în cadranul I.

Teorema medianei

Aplicații ale produsului scalar: teorema medianei.

Operații cu permutări

Compunerea permutărilor de grad n.Proprietăți ale compunerii permutărilor de grad n. puterea unei permutări de grad n.Proprietăți ale transpozițiilor.

Atribute HTML

Atributele oferă informații suplimentare despre elementele HTML.
Adresa de legătură este specificată în atributul href.
Numele de fișier al sursei imaginii este specificat în atributul src.
Atributele width și height, care specifică lățimea și înălțimea imaginii.
Atributul alt specifică un text alternativ care trebuie utilizat, dacă nu poate fi afișată o imagine.
Atributul style este utilizat pentru a specifica stilul unui element.
Limbajul este declarat cu atributul lang.
Atributul title este adaugat la elementul <p>.

Introducere în HTML5

WHATWG a dorit să dezvolte HTML ca un „standard de viață”. Un nivel de viață este mereu actualizat și îmbunătățit. Se pot adăuga noi funcții, dar funcționalitățile vechi nu pot fi eliminate.
Declarația DOCTYPE pentru HTML5.
Declarația de codare a caracterelor (charset).
Codificarea implicită a caracterelor în HTML5 este UTF-8.
Elementesemantice noi precum: <header>, <footer>, <article> și <section>.
Atribute ale elementelor de formular noi, cum ar fi: number, date, time, calendar, și range.
Elemente grafice noi: <svg> și <canvas>.
Elemente multimedia noi: <audio> și <video>.
Cele mai interesante API-uri noi în HTML5 sunt: HTML Geolocation, HTML Drag and Drop, HTML Local Storage, HTML Application Cache, HTML Web Workers, HTML SSE.
Următoarele elemente HTML4 au fost eliminate în HTML5: <acronym>, <applet>, <basefont>, <big>, <center>, <dir>, <font>, <frame>, <frameset>, 
<noframes>, <strike>, <tt>.
Folosiți în schimb: <abbr>, <object>, CSS, <ul>, <s>, <del>.

Elemente semantice în HTML5

Semantica se referă la studiul sensurilor cuvintelor și frazelor dintr-o limbă.
Elemente semantice = elemente cu semnificație:
<article>, <aside>, <details>, <figcaption>, <figure>, <footer>, <header>, <main>, <mark>, <nav>, <section>, <summary>, <time>.
Exemple de elemente non-semantice<div> și <span> - Nu spune nimic despre conținutul său.
Exemple de elemente semantice<form><tabel> și <article> - definește clar conținutul său.
<article> Definește un articol
<aside> Definește conținutul în afară de conținutul paginii
<detalii> Definește detalii suplimentare pe care utilizatorul le poate vizualiza sau ascunde
<figcaption> Definește o legendă pentru un element <figure>
<figure> Specifică conținut independent, cum ar fi ilustrații, diagrame, fotografii, listări de coduri etc.
<footer> Definește un subsol pentru un document sau secțiune
<header> Specifică un antet pentru un document sau secțiune
<main> Specifică conținutul principal al unui document
<mark> Definește text marcat / evidențiat
<nav> Definește legăturile de navigare
<section> Definește o secțiune dintr-un document
<summary> Definește un titlu vizibil pentru un element <details>
<time> Definește o data / ora

Ghid de stil în HTML5

O utilizare constantă a stilului face mai ușor pentru alții să înțeleagă HTML-ul.
În viitor, programe precum cititorii XML ar putea dori să citească HTML-ul.
Utilizarea unei sintaxe bine formate - „aproape de XHTML” poate fi inteligentă.
Vă recomandăm să folosiți numele elementelor scrise cu litere mici, deoarece:
În HTML5, nu trebuie să închideți toate elementele (de exemplu elementul <p>).
Vă recomandăm să închideți toate elementele HTML.
Închideți elementele HTML goale
În HTML5, este opțional să închideți elementele goale.
HTML5 permite amestecarea literelor mari și a literelor mici în nume de atribute.
Vă recomandăm să folosiți nume de atribute scrise culitere mici.
HTML5 permite ca valorile atributelor să fie scrise fără ghilimele.
Vă recomandăm să puneți între ghilimele valorile atributului.
Adăugați întotdeauna atributul alt la imagini. Acest atribut este important atunci când imaginea din anumite motive nu poate fi afișată. De asemenea, definiți întotdeauna lățimea și înălțimea (width și height) imaginii. Reduce pâlpâirea, deoarece browserul poate rezerva spațiu pentru imagine înainte de încărcare.
HTML5 permite spații în jurul semnelor egale. Dar fără spațiu este mai ușor de citit și grupează entitățile mai bine împreună.
Când utilizați un editor HTML, este incomod să derulați la dreapta și la stânga pentru a citi codul HTML.
Încercați să evitați liniile de cod mai lungi de 80 de caractere.
Nu adăugați linii necompletate fără un motiv.
Pentru lizibilitate, adăugați linii goale pentru a separa blocuri de coduri mari sau logice.
Pentru lizibilitate, adăugați două spații de indentare. Nu folosiți tasta tab.
Nu folosiți linii necompletate și indentate. Nu este necesar să indentizați fiecare elemen
În HTML5, eticheta <html> și eticheta <body> pot fi omise.
Nu vă recomandăm să omiteți etichetele <html> și <body>.
Elementul <html> este rădăcina documentului. Este locul recomandat pentru specificarea limbii paginii.
Omiterea <html> sau <body> poate bloca software-ul DOM și XML.
Omiterea <body> poate produce erori în browserele mai vechi (IE9).
În HTML5, eticheta <head> poate fi omisă.
În mod implicit, browserele vor adăuga toate elementele înainte de <body> la un element implicit <head>.
Puteți reduce complexitatea HTML prin omiterea etichetei <head>
Elementul <title> este necesar în HTML5. Faceți titlul cât mai semnificativ posibil
HTML5 a introdus o metodă pentru a permite proiectanților web să preia controlul asupra viewport-ului, prin eticheta <meta>.
Viewport este zona vizibilă a utilizatorului unei pagini web. Acesta variază în funcție de dispozitiv și va fi mai mic pe un telefon mobil decât pe ecranul computerului.
Lățimea (width) = partea lățimii dispozitivului (width=device-width part) - stabilește lățimea paginii pentru a urma lățimea ecranului dispozitivului (screen-width) (care va varia în funcție de dispozitiv).
Partea inițială = 1,0 setează nivelul de zoom inițial atunci când pagina este încărcată prima dată de browser
Comentariile scurte trebuie scrise pe o singură linie
Comentariile lungi sunt mai ușor de observat dacă sunt indentate în două spații.
Utilizați sintaxa simplă pentru a face legătura cu foile de stil (atributul tip nu este necesar)
Regulile scurte pot fi comprimate
Regulile lungi trebuie scrise pe mai multe rânduri
Puneți suportul de deschidere (opening bracket) pe aceeași linie cu selectorul.
Utilizați un spațiu înainte de suportul de deschidere (opening bracket).
Folosiți două spații de indentare.
Utilizați punct și virgulă după fiecare pereche proprietate-valoare, inclusiv ultima.
Utilizați ghilimele în jurul valorilor numai dacă valoarea conține spații.
Plasați suportul de închidere (opening bracket) pe o linie nouă, fără spații de conducere.
Evitați liniile de peste 80 de caractere.
Se încarcă JavaScript în HTML
Accesarea elementelor HTML cu JavaScript
Utilizați numele de fișiere scrise cu litere mici
Fișierele HTML ar trebui să aibă o extensie .html sau .htm.
Fișierele CSS ar trebui să aibă o extensie .css.
Fișierele JavaScript ar trebui să aibă o extensie .js.
Nu există nicio diferență între extensiile .htm și .html. Ambele vor fi tratate ca HTML de orice browser web sau server web.
Când o adresă URL nu specifică un nume de fișier (cum ar fi https://www.lectii-virtuale.ro/css/), serverul returnează un nume de fișier implicit. Numele de fișiere implicite obișnuite sunt index.html, index.htm, default.html și default.htm.
Dacă serverul dvs. este configurat doar cu "index.html" ca nume de fișier implicit, fișierul dvs. trebuie numit "index.html", nu "index.htm."

HTML SVG

SVG înseamnă grafică vectorială scalabilă.
SVG este utilizat pentru a defini grafica pentru Web.
SVG este o recomandare W3C.
Elementul HTML <svg> este un container pentru grafică SVG.
SVG are mai multe metode pentru desenarea căilor, casetelor, cercurilor, textului și imaginilor grafice.
Diferențele dintre SVG și Canvas
SVG este un limbaj pentru descrierea graficelor 2D în XML.
Canvas desenează grafică 2D, pe fugă (cu un JavaScript).
SVG este bazat pe XML, ceea ce înseamnă că fiecare element este disponibil în DOM SVG. Puteți atașa manipulatoare de evenimente JavaScript (JavaScript event handlers) pentru un element.
În SVG, fiecare formă desenată este amintită ca obiect. Dacă se schimbă atributele unui obiect SVG, browserul poate reda automat forma.
Canvas: Rezoluție dependentă. Fără suport pentru organizatorii de evenimente.Capacități slabe de redare a textului. Puteți salva imaginea rezultată ca .png sau .jpg. Bine potrivit pentru jocuri cu intensitate grafică.
SVG: Rezoluție independentă. Suport pentru operatorii de evenimente. Cel mai potrivit pentru aplicații cu zone de redare mari (Google Maps). Redarea lentă, dacă este complexă (orice lucru care utilizează mult DOM va fi lent). Nu este potrivit pentru aplicații de joc.

HTML Plug-ins

Scopul unui plug-in este extinderea funcționalității unui browser web.
Aplicațiile Helper (plug-in-uri) sunt programe de calculator care extind funcționalitatea standard a unui browser web.
Exemple de plug-in-uri cunoscute sunt applet-urile Java.
Plug-in-urile pot fi adăugate la paginile web cu eticheta <object> sau cu eticheta<embed>.
Plug-in-urile pot fi utilizate în mai multe scopuri: afișarea hărților, scanarea virușilor, verificarea codului dvs. bancar etc.
Pentru a afișa videoclipuri și audio: utilizați etichetele <video> și <audio>.
Elementul <object> este acceptat de toate browserele.
Elementul <object> definește un obiect încorporat într-un document HTML.
Este utilizat pentru a încorpora plug-in-uri (cum ar fi applet-uri Java, cititoare PDF, Flash Players) în paginile web.
Elementul <object> poate fi de asemenea utilizat pentru a include HTML în HTML sau imagini.
Elementul <embed> este acceptat în toate browserele principale.
Elementul <embed> definește, de asemenea, un obiect încorporat într-un document HTML.
Navigatoarele web au acceptat elementul <embed> de mai mult timp. Cu toate acestea, nu a făcut parte din specificația HTML înainte de HTML5.
Elementul <embed> nu are o etichetă de închidere. Nu poate conține text alternativ.
Elementul <embed> poate fi folosit și pentru a include HTML în HTML sau imagini.

Stocare Web în HTML5

Stocare web în HTML - mai bine decât cookie-urile.
Cu stocarea web, aplicațiile web pot stoca datele local în browserul utilizatorului.
Stocarea web este mai sigură și cantități mari de date pot fi stocate local, fără a afecta performanța site-ului web.
Spre deosebire de cookie-uri, limita de stocare este mult mai mare (cel puțin 5 MB) și informațiile nu sunt transferate niciodată pe server.
Stocarea web este pe origine (pe domeniu și protocol). Toate paginile, de la o origine, pot stoca și accesa aceleași date.
Obiecte de stocare Web în HTML
Stocarea web în HTML furnizează două obiecte pentru stocarea datelor pe client:
window.localStorage - stochează date fără dată de expirare.
window.sessionStorage - stochează datele pentru o sesiune (datele se pierd la închiderea filei browserului).
Înainte de a utiliza stocarea web, verificați asistența browserului pentru localStorage și sessionStorage.
Obiectul localStorage stochează datele fără data de expirare. Datele nu vor fi șterse atunci când browserul este închis și vor fi disponibile a doua zi, săptămână sau an.
Perechile nume / valoare sunt întotdeauna stocate ca șiruri. Nu uitați să le convertiți în alt format atunci când este nevoie!
Obiectul sessionStorage este egal cu obiectul localStorage, cu excepția faptului că stochează datele pentru o singură sesiune. Datele sunt șterse atunci când utilizatorul închide fila browserului specific.
 

PHP Validare formular

Validare formular PHP
Acesta și capitolele următoare arată cum să folosești PHP pentru a valida datele formularului.
Validare formular PHP
Gândiți-vă la SECURITATE când prelucrați formularele PHP!
Aceste pagini vor arăta cum să procesați formularele PHP din punct de vedere al securitatii. Validarea corectă a datelor din formular este importantă pentru a vă proteja formularul de hackeri și spameri!
Formularul HTML la care vom lucra în aceste capitole, conține diferite câmpuri de introducere: câmpuri de text obligatorii și opționale, butoane radio și un buton de trimitere (required and optional text fields, radio buttons, and a submit button):
Name - Obligatoriu. + Trebuie să conțină doar litere și spațiu alb
E-mail - Obligatoriu. + Trebuie să conțină o adresă de e-mail validă (cu @ și.)
Website - Obligatoriu. Dacă este prezent, trebuie să conțină o adresă URL validă
Comment - Opțional. Câmp de introducere pe mai multe linii (textarea)
Sex - Obligatoriu. Trebuie să selectați una
Mai întâi vom analiza codul HTML simplu pentru formular:
Câmpuri text (Text Fields)
Câmpurile nume, e-mail și website sunt elemente de introducere ale textului (input elements), iar câmpul de comentarii este textarea. Codul HTML arată astfel:
Nume: <input type="text" name="name">
E-mail: <input type="text" name="email">
Website: <input type="text" name="website">
Comment: <textarea name="comment" rows="5" cols="40"></textarea>
Butoane radio (Radio Buttons)
Câmpurile gen (gender fields) sunt butoane radio, iar codul HTML arată astfel:
Gen:
<input type="radio" name="gender" value="female">Femeie
<input type="radio" name="gender" value="male">Bărbat
<input type="radio" name="gender" value="other">Altele
Elementul form (The Form Element)
Codul HTML al formularului arată astfel:
<form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>">
Când formularul este trimis, datele formularului sunt trimise cu method = "post".
Ce este variabila $_SERVER["PHP_SELF"] ?
$_SERVER["PHP_SELF"] este o variabilă super globală care returnează numele de fișier al scriptului care se execută în prezent.
Așadar, $_SERVER["PHP_SELF"] trimite datele formularului (submitted form data) trimis către pagina în sine, în loc să sară pe o altă pagină. În acest fel, utilizatorul va primi mesaje de eroare pe aceeași pagină ca și formularul.
Ce este funcția htmlspecialchars()?
Funcția htmlspecialchars() convertește caracterele speciale în entități HTML. Aceasta înseamnă că va înlocui caractere HTML precum <and> cu &lt; și &gt;. Acest lucru împiedică atacatorii să exploateze codul prin injectarea codului HTML sau a javascriptului (Cross-site Scripting attacks) în formulare.
Notă imporantă privind securitatea formularului PHP
Variabila $_SERVER["PHP_SELF"] poate fi utilizată de hackeri!
Dacă PHP_SELF este utilizat în pagina dvs., un utilizator poate introduce un slash (/) și apoi unele comenzi de Cross Site Scripting (XSS) pentru a executa.
Scripturi încrucișate (Cross-site scripting) (XSS) este un tip de vulnerabilitate a securității computerului care se găsește de obicei în aplicațiile Web. XSS le permite atacatorilor să injecteze scripturi din partea clientului în paginile Web vizualizate de alți utilizatori.
Presupunem că avem următorul formular într-o pagină numită "test_form.php":
<form method="post" action="<?php echo $_SERVER["PHP_SELF"];?>">
Acum, dacă un utilizator introduce URL-ul normal în bara de adrese precum "http://www.example.com/test_form.php", codul de mai sus va fi tradus în:
<form method="post" action="test_form.php">
Până acum, bine.
Cu toate acestea, considerați că un utilizator introduce următoarea adresă URL în bara de adrese:
http://www.example.com/test_form.php/%22%3E%3Cscript%3Ealert('hacked')%3C/script%3E
În acest caz, codul de mai sus va fi tradus în:
<form method="post" action="test_form.php/"><script>alert('hacked')</script>
Acest cod adaugă o etichetă script (script tag) și o comandă de alertă (alert command). Și atunci când pagina se încarcă, codul JavaScript va fi executat (utilizatorul va vedea o casetă de alertă (alert box)). Acesta este doar un exemplu simplu și inofensiv cum poate fi exploatată variabila PHP_SELF.
Fiți conștienți de faptul că orice cod JavaScript poate fi adăugat în eticheta <script>! Un hacker poate redirecționa utilizatorul către un fișier de pe alt server, iar respectivul fișier poate conține cod rău intenționat care poate modifica variabilele globale sau poate trimite formularul la o altă adresă pentru a salva datele utilizatorului, de exemplu.
Cum să evitați exploatările $_SERVER["PHP_SELF"]?
Exploatările $_SERVER["PHP_SELF"] pot fi evitate folosind funcția htmlspecialchars().
Codul formularului ar trebui să arate astfel:
<form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>">
Funcția htmlspecialchars() convertește caracterele speciale în entități HTML. Acum, dacă utilizatorul încearcă să exploateze variabila PHP_SELF, va rezulta următoarea ieșire (output):
<form method="post" action="test_form.php/&quot;&gt;&lt;script&gt;alert('hacked')&lt;/script&gt;">
Validați datele formularului cu PHP
Primul lucru pe care îl vom face este să trecem toate variabilele prin funcția PHP htmlspecialchars().
Când folosim funcția htmlspecialchars(); atunci dacă un utilizator încearcă să trimită următoarele într-un câmp text:
<script>location.href('http://www.hacked.com')</script>
- acest lucru nu ar fi executat, deoarece va fi salvat ca și cod HTML scăpat, astfel:
&lt;script&gt;location.href('http://www.hacked.com')&lt;/script&gt;
Codul este acum sigur pentru a fi afișat pe o pagină sau în interiorul unui e-mail.
De asemenea, vom face alte două lucruri atunci când utilizatorul va trimite formularul:
Scoateți caracterele inutile (spațiu suplimentar, filă, linie nouă (extra space, tab, newline)) din datele de intrare ale utilizatorului (cu funcția PHP trim() )
Eliminați backslashes (\) din datele de intrare ale utilizatorului (cu funcția PHP stripslashes())Următorul pas este să creem o funcție care să facă toate verificările pentru noi (ceea ce este mult mai convenabil decât scrierea aceluiași cod încă o dată).
Vom numi funcția test_input().
Acum, putem verifica fiecare variabilă $_POST cu funcția test_input(), iar scriptul va arata astfel:
<?php
// definiți variabilele și setați valorile goale
$name = $email = $gender = $comment = $website = "";
if ($_SERVER["REQUEST_METHOD"] == "POST") {
  $name = test_input($_POST["name"]);
  $email = test_input($_POST["email"]);
  $website = test_input($_POST["website"]);
  $comment = test_input($_POST["comment"]);
  $gender = test_input($_POST["gender"]);
}
function test_input($data) {
  $data = trim($data);
  $data = stripslashes($data);
  $data = htmlspecialchars($data);
  return $data;
}
?>
Observați că la începutul scriptului, verificăm dacă formularul a fost trimis folosind $_SERVER ["REQUEST_METHOD"]. Dacă REQUEST_METHOD este POST, atunci formularul a fost trimis - și ar trebui validat. Dacă nu a fost trimis, săriți validarea și afișați un formular necompletat.
Cu toate acestea, în exemplul de mai sus, toate câmpurile de introducere sunt opționale. Scriptul funcționează bine chiar dacă utilizatorul nu introduce date.
Următorul pas este de a face necesare câmpurile de intrare și de a crea mesaje de eroare, dacă este nevoie.

PHP Manipularea fișierelor

Manipularea fișierelor PHP (PHP File Handling)
Manipularea fișierelor (File handling) este o parte importantă a oricărei aplicații web. Adesea, trebuie să deschideți și să procesați un fișier pentru diferite sarcini.
PHP Manipularea fișierelor (PHP Manipulating Files)
PHP are mai multe funcții pentru crearea, citirea, încărcarea și editarea fișierelor (creating, reading, uploading, and editing files).
Aveți grijă când manipulați fișierele (manipulating files)!
Când manipulați fișierele (manipulating files) trebuie să fiți foarte atenți.
Puteți face multe daune dacă faceți ceva greșit. Erorile comune sunt: ​​editarea fișierului greșit, completarea unui hard disk cu date nefolositoare (garbage data) și ștergerea din accident a conținutului unui fișier.
Funcția PHP readfile()
Funcția readfile() citește un fișier și îl scrie în bufferul de ieșire (output buffer).
Presupunem că avem un fișier text numit „webdictionary.txt”, stocat pe server, care arată astfel:
AJAX = JavaScript și XML asincron (Asynchronous JavaScript and XML)
CSS = Fișe de stil în cascadă (Cascading Style Sheets)
HTML = Hyper Text Markup Language
PHP = PHP Hypertext Preprocessor
SQL = Limbaj de interogare structurat (Structured Query Language)
SVG = Grafică vectorială scalabilă (Scalable Vector Graphics)
XML = Limbaj de marcare extinsă  (EXtensible Markup Language)
Codul PHP pentru a citi fișierul și a-l scrie în bufferul de ieșire (output buffer) este după cum urmează (funcția readfile() returnează numărul de octeți citiți cu succes):
<?php
echo readfile("webdictionary.txt");
?>
Funcția readfile() este utilă dacă tot ce doriți să faceți este să deschideți un fișier și să citiți conținutul acestuia.
Capitolele următoare vă vor învăța mai multe despre gestionarea fișierelor.

PHP Filtre

Filtre PHP
Validarea datelor = Determinați dacă datele sunt într-o formă corectă.
Sanitizarea datelor = Eliminați orice caracter ilegal din date.
Extensia de filtrare PHP
Filtrele PHP sunt utilizate pentru validarea și igienizarea intrărilor externe.
Extensia de filtru PHP are multe dintre funcțiile necesare pentru verificarea intrării utilizatorului (user input) și este concepută pentru a face validarea datelor mai ușoară și mai rapidă.
Funcția filter_list() poate fi utilizată pentru a enumera ce oferă extensia de filtru PHP:
<table>
  <tr>
    <td>Nume filtru</td>
    <td>ID filtru</td>
  </tr>
  <?php
  foreach (filter_list() as $id =>$filter) {
      echo '<tr><td>' . $filter . '</td><td>' . filter_id($filter) . '</td></tr>';
  }
  ?>
</table>
De ce să folosești filtrele?
Multe aplicații web primesc input extern. Intrarea/datele externe pot fi:
Intrarea utilizatorului dintr-un formular (User input from a form)
Cookies
Date despre servicii web (Web services data)
Variabilele serverului (Server variables)
Rezultatele interogării bazei de date (Database query results)
Ar trebui să validați întotdeauna datele externe!
Datele trimise nevalide pot duce la probleme de securitate și vă pot break pagina web!
Folosind filtre PHP puteți fi sigur că aplicația dvs. primește introducerea corectă!
Funcția PHP filter_var()
Funcția filter_var() validează și igienizează datele.
Funcția filter_var() filtrează o singură variabilă cu un filtru specificat. Este nevoie de două bucăți de date (pieces of data):
Variabila pe care doriți să o verificați
Tipul de verificare de utilizat
Sanitizarea unui string
Următorul exemplu utilizează funcția filter_var() pentru a elimina toate etichetele HTML dintr-un șir (string):
<?php
$str = "<h1>Hello World!</h1>";
$newstr = filter_var($str, FILTER_SANITIZE_STRING);
echo $newstr;
?>
Validarea unui număr întreg (integer)
Următorul exemplu utilizează funcția filter_var() pentru a verifica dacă variabila $int este un număr întreg (integer). Dacă $int este un număr întreg (integer), rezultatul codului de mai jos va fi: „Integer este valid”. Dacă $int nu este un număr întreg (integer), rezultatul va fi: „Integer nu este valid”:
<?php
$int = 100;
if (!filter_var($int, FILTER_VALIDATE_INT) === false) {
    echo("Integer este valid");
} else {
    echo("Integer nu este valid");
}
?>
filter_var() și Problema cu 0
În exemplul de mai sus, dacă $int a fost setat pe 0, funcția de mai sus va returna „Integer nu este valid”. Pentru a rezolva această problemă, utilizați codul de mai jos:
<?php
$int = 0;
if (filter_var($int, FILTER_VALIDATE_INT) === 0 || !filter_var($int, FILTER_VALIDATE_INT) === false) {
    echo("Integer este valid");
} else {
    echo("Integer nu este valid");
}
?>
Validați o adresă IP
Următorul exemplu utilizează funcția filter_var() pentru a verifica dacă variabila $ip este o adresă IP validă:
<?php
$ip = "127.0.0.1";
if (!filter_var($ip, FILTER_VALIDATE_IP) === false) {
    echo("$ip este o adresă IP validă");
} else {
    echo("$ip nu este o adresă IP validă");
}
?>
Sanitizarea și validarea unei adrese e-mail
Următorul exemplu utilizează funcția filter_var() pentru a elimina mai întâi toate caracterele ilegale din variabila $e-mail, apoi verificați dacă este o adresă e-mail validă:
<?php
$email = "[email protected]";
// Eliminați toate caracterele ilegale din e-mail
$email = filter_var($email, FILTER_SANITIZE_EMAIL);
// Validați e-mail
if (!filter_var($email, FILTER_VALIDATE_EMAIL) === false) {
    echo("$email este o adresă e-mail validă");
} else {
    echo("$email nu este o adresă e-mail validă");
}
?>
Sanitizarea și validarea unei adrese URL
Următorul exemplu utilizează funcția filter_var() pentru a elimina mai întâi toate caracterele ilegale dintr-o adresă URL, apoi verificați dacă $url este o adresă URL validă:
<?php
$url = "https://www.w3schools.com";
// Eliminați toate caracterele ilegale dintr-un URL
$url = filter_var($url, FILTER_SANITIZE_URL);
// Validați adresa URL
if (!filter_var($url, FILTER_VALIDATE_URL) === false) {
    echo("$url este o adresă URL validă");
} else {
    echo("$url nu este o adresă URL validă");
}
?>

PHP - OOP

PHP - OOP
PHP - Ce este OOP?
De la PHP5, puteți scrie și cod PHP într-un stil orientat pe obiecte (object-oriented style).
Programarea orientată pe obiecte (Object-Oriented programming) este mai rapidă și mai ușor de executat.
PHP Ce este OOP?
OOP înseamnă programare orientată pe obiecte (Object-Oriented Programming).
Programarea procedurală (Procedural programming) se referă la scrierea procedurilor sau a funcțiilor care efectuează operațiuni asupra datelor, în timp ce programarea orientată pe obiect (object-oriented programming) este despre crearea de obiecte care conțin atât date cât și funcții.
Programarea orientată pe obiecte (object-oriented programming) are mai multe avantaje față de programarea procedurală (procedural programming):
OOP este mai rapid și mai ușor de executat
OOP oferă o structură clară pentru programe
OOP ajută la păstrarea codului PHP DRY „Nu vă repetați” (Don't Repeat Yourself) și face codul mai ușor de întreținut, modificat și depanat
OOP face posibilă crearea de aplicații reutilizabile complete, cu mai puțin cod și timp de dezvoltare mai scurt
Principiul „Nu vă repetați” (Don't Repeat Yourself) (DRY) se referă la reducerea repetării codului. Ar trebui să extrageți codurile care sunt comune pentru aplicație și să le așezați într-un singur loc și să le reutilizați în loc să le repetați.
PHP - Ce sunt clasele și obiectele?
Clasele și obiectele sunt cele două aspecte principale ale programării orientate pe obiecte (object-oriented programming).
Diferența dintre clasă și obiecte.
O clasă este un șablon pentru obiecte (template for objects), iar un obiect este o instanță a unei clase.
Când obiectele individuale sunt create, moștenesc toate proprietățiile și comportamentele din clasă, dar fiecare obiect va avea valori diferite pentru proprietăți.
Uitați-vă la capitolele următoare pentru a afla mai multe despre OOP.

PHP Bază de date MySQL

Bază de date PHP MySQL
Cu PHP, vă puteți conecta la și manipula bazele de date.
MySQL este cel mai popular sistem de baze de date folosit cu PHP.
Ce este MySQL?
MySQL este un sistem de baze de date utilizat pe web
MySQL este un sistem de baze de date care rulează pe un server
MySQL este ideal atât pentru aplicații mici cât și pentru aplicații mari
MySQL este foarte rapid, fiabil și ușor de utilizat
MySQL folosește SQL standard
MySQL compilează pe mai multe platforme
MySQL este gratuit pentru a fi descărcat și utilizat
MySQL este dezvoltat, distribuit și susținut de Oracle Corporation
MySQL poartă numele fiicei cofondatoare Monty Widenius: My
Datele dintr-o bază de date MySQL sunt stocate în tabele. Un tabel este o colecție de date conexe și este format din coloane și rânduri.
Bazele de date sunt utile pentru stocarea informațiilor categoric. O companie poate avea o bază de date cu următoarele tabele:
Angajați, Produse, Clienți, Comenzi (Employees, Products, Customers, Orders)
Sistem de baze de date PHP + MySQL
PHP combinat cu MySQL este cross-platform (puteți dezvolta în Windows și puteți lucra pe o platformă Unix)
Database Queries
Un query este o întrebare sau o solicitare (question or a request).
Putem interoga (query) o bază de date (database) pentru informații specifice și putem returna un set de înregistrări.
Uită-te la următoarea interogare (query) (folosind SQL standard):
SELECT LastName FROM Employees
Interogarea (query) de mai sus selectează toate datele din coloana „LastName” din tabelul „Employees”.
Descărcați baza de date MySQL
Dacă nu aveți un server PHP cu o bază de date MySQL, îl puteți descărca gratuit aici: http://www.mysql.com
Date despre baza de date MySQL
MySQL este sistemul de baze de date standard de facto pentru site-urile web cu volume IMPORTANTE atât de date cât și de utilizatori finali (end-users) (cum ar fi Facebook, Twitter și Wikipedia).
Un alt lucru despre MySQL este că poate fi redus pentru a sprijini aplicațiile bazei de date încorporate.

PHP Conectare la MySQL

PHP Conectează-te la MySQL
PHP 5 și versiunile ulterioare pot lucra cu o bază de date MySQL folosind:
Extensia MySQLi („i” este îmbunătățită)
DPO (Obiecte de date PHP/PHP Data Objects)
Versiunile anterioare de PHP au folosit extensia MySQL. Cu toate acestea, această extindere a fost depășită în 2012.
Ar trebui să folosesc MySQLi sau PDO?
Dacă aveți nevoie de un răspuns scurt, ar fi „Orice dorți”.
Atât MySQLi, cât și PDO au avantajele lor:
PDO va funcționa pe 12 sisteme de baze de date diferite, în timp ce MySQLi va funcționa doar cu baze de date MySQL.
Deci, dacă trebuie să schimbați proiectul pentru a utiliza o altă bază de date, PDO ușurează procesul. Trebuie doar să schimbați șirul de conexiune (connection string) și câteva interogari (queries). Cu MySQLi, va trebui să rescrieți întregul cod - interogările (queries) incluse.
Ambele sunt orientate pe obiecte (object-oriented), dar MySQLi oferă și o API procedurală (procedural API).
Ambele acceptă declarații pregătite (Prepared Statements). Declarațiile pregătite (Prepared Statements) protejează împotriva injecției SQL și sunt foarte importante pentru securitatea aplicațiilor web.
Exemple MySQL atât în ​​MySQLi cât și în sintaxa PDO
Aici și în capitolele următoare vom demonstra trei moduri de a lucra cu PHP și MySQL:
MySQLi (orientat pe obiect/object-oriented)
MySQLi (procedural)
DOP
Instalare MySQLi
Pentru Linux și Windows: Extensia MySQLi este instalată automat în majoritatea cazurilor, atunci când este instalat pachetul mysql php5.
Pentru detalii despre instalare, accesați:
http://php.net/manual/en/mysqli.installation.php
Instalare DPO
Pentru detalii despre instalare, accesați: http://php.net/manual/en/pdo.installation.php
Deschideți o conexiune la MySQL
Înainte de a putea accesa datele din baza de date MySQL, trebuie să ne putem conecta la server:
Exemplu (MySQLi orientat pe obiect/MySQLi Object-Oriented)
<?php
$servername = "localhost";
$username = "username";
$password = "password";
// Creați conexiunea
$conn = new mysqli($servername, $username, $password);
// Verificați conexiunea
if ($conn->connect_error) {
    die("Conexiunea a eșuat: " . $conn->connect_error);
}
echo "Conectat cu succes";
?>
$connect_error a fost spart până la PHP 5.2.9 și 5.3.0. Dacă trebuie să vă asigurați compatibilitatea cu versiunile PHP înainte de 5.2.9 și 5.3.0, utilizați în schimb următorul cod:
// Verificați conexiunea
if (mysqli_connect_error()) {
    die("Conexiunea la baza de date a eșuat: " . mysqli_connect_error());
}
Exemplu (MySQLi Procedural)
<?php
$servername = "localhost";
$username = "username";
$password = "password";
// Creați conexiunea
$conn = mysqli_connect($servername, $username, $password);
// Verificați conexiunea
if (!$conn) {
    die("Conexiunea a eșuat: " . mysqli_connect_error());
}
echo "Conexiunea s-a realizat cu succes";
?>
Exemplu (PDO)
<?php
$servername = "localhost";
$username = "username";
$password = "password";
try {
    $conn = new PDO("mysql:host=$servername;dbname=myDB", $username, $password);
    // setați modul de eroare PDO la excepție
    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    echo "Conectat cu succes";
    }
catch(PDOException $e)
    {
    echo "Conexiune eșuată: " . $e->getMessage();
    }
?>
În exemplul PDO de mai sus am specificat și o bază de date (myDB). PDO necesită o bază de date validă pentru a vă conecta. Dacă nu este specificată nicio bază de date, se face o excepție.
Un mare beneficiu al PDO este că are o clasă de excepție pentru a rezolva problemele care pot apărea în interogările noastre de baze de date (database queries). Dacă o excepție este făcută în block-ul try{}, scriptul nu mai este executat și curge direct către primul block catch(){}.
Închideți conexiunea
Conexiunea va fi închisă automat la finalizarea scriptului. Pentru a închide înainte conexiunea, utilizați următoarele:
MySQLi Object-Oriented:
$conn->close();
MySQLi Procedural:
mysqli_close($conn);
PDO:
$conn = null;

PHP - AJAX Introducere

PHP - AJAX Introducere
AJAX este despre actualizarea părților unei pagini web, fără a reîncărca întreaga pagină.
Ce este AJAX?
AJAX = JavaScript asincron și XML.
AJAX este o tehnică pentru crearea de pagini web rapide și dinamice.
AJAX permite actualizarea asincronă a paginilor web, schimbând cantități mici de date cu serverul din culise. Aceasta înseamnă că este posibil să actualizați părți ale unei pagini web, fără a reîncărca întreaga pagină.
Paginile web clasice (care nu utilizează AJAX) trebuie să reîncarce întreaga pagină dacă conținutul ar trebui să se schimbe.
Exemple de aplicații care utilizează AJAX: Google Maps, Gmail, Youtube și Facebook.
AJAX se bazează pe standardele de internet
AJAX se bazează pe standardele de internet și folosește o combinație de:
Obiectul XMLHttpRequest (pentru schimbul de date asincron cu un server)
JavaScript / DOM (pentru afișarea / interacțiunea cu informațiile)
CSS (pentru stilizarea datelor)
XML (adesea folosit ca format pentru transferul de date)
Aplicațiile AJAX sunt independente de browser și de platformă!
Sugestie Google
AJAX a fost popularizat în 2005 de Google, cu Google Suggest.
Google Suggest utilizează AJAX pentru a crea o interfață web foarte dinamică: Când începeți să tastați în caseta de căutare Google, un JavaScript trimite cererea de informații pe un server și serverul returnează o listă de sugestii.
Începeți să utilizați AJAX Today
În tutorialul nostru PHP, vom demonstra modul în care AJAX poate actualiza părți ale unei pagini web, fără a reîncărca întreaga pagină. Scriptul serverului va fi scris în PHP.

PHP AJAX

PHP - AJAX și PHP
AJAX este utilizat pentru a crea mai multe aplicații interactive.
Exemplu AJAX PHP
Următorul exemplu va demonstra modul în care o pagină web poate comunica cu un server web în timp ce un utilizator tastează într-un câmp de intrare (input field).
Când un utilizator introduce un caracter în câmpul de intrare (input field), se execută o funcție numită "showHint()".
Funcția este declanșată de evenimentul onkeyup.
<html>
<head>
<script>
function showHint(str) {
    if (str.length == 0) {
        document.getElementById("txtHint").innerHTML = "";
        return;
    } else {
        var xmlhttp = new XMLHttpRequest();
        xmlhttp.onreadystatechange = function() {
            if (this.readyState == 4 && this.status == 200) {
                document.getElementById("txtHint").innerHTML = this.responseText;
            }
        };
        xmlhttp.open("GET", "gethint.php?q=" + str, true);
        xmlhttp.send();
    }
}
</script>
</head>
<body>
<p><b>Începeți să tastați un prenume în câmpul de introducere (input field) de mai jos:</b></p>
<form>
Prenume: <input type="text" onkeyup="showHint(this.value)">
</form>
<p>Sugestii: <span id="txtHint"></span></p>
</body>
</html>
Explicarea codului:
În primul rând, verificați dacă câmpul de intrare (input field) este gol (str.length == 0). Dacă este, ștergeți conținutul marcajului de substituție txtHint și ieșiți din funcție.
Cu toate acestea, dacă câmpul de intrare nu este gol, faceți următoarele:
Creați un obiect XMLHttpRequest
Creați funcția care trebuie executată atunci când răspunsul serverului este gata
Trimiteți cererea la un fișier PHP (gethint.php) de pe server
Observați că parametrul q este adăugat la url (gethint.php?q="+str)
Și variabila str conține conținutul câmpului de intrare (input field)
Fișierul PHP - "gethint.php"
Fișierul PHP verifică o serie de nume și returnează numele corespunzător browserului:
<?php
// Array with names
$a[] = "Ana";
$a[] = "Briana";
$a[] = "Cristina";
$a[] = "Diana";
$a[] = "Eva";
$a[] = "Florina";
$a[] = "Gina";
$a[] = "Helena";
$a[] = "Ina";
$a[] = "Jana";
$a[] = "Karina";
$a[] = "Liliana";
$a[] = "Nina";
$a[] = "Ofelia";
$a[] = "Petronela";
$a[] = "Alexandra";
$a[] = "Rahela";
$a[] = "Corina";
$a[] = "Dorina";
$a[] = "Evelina";
$a[] = "Emilia";
$a[] = "Sorina";
$a[] = "Tina";
$a[] = "Luana";
$a[] = "Violeta";
$a[] = "Lizuca";
$a[] = "Elizsabeta";
$a[] = "Eliana";
$a[] = "Wanda";
$a[] = "Victoria;
// obțineți parametrul q de la URL
$q = $_REQUEST["q"];
$hint = "";
// căutarea tuturor indiciilor din tablou (array) dacă $q este diferit de ""
if ($q !== "") {
    $q = strtolower($q);
    $len=strlen($q);
    foreach($a as $name) {
        if (stristr($q, substr($name, 0, $len))) {
            if ($hint === "") {
                $hint = $name;
            } else {
                $hint .= ", $name";
            }
        }
    }
}
// Ieșirea „fără sugestii” dacă nu a fost găsit niciun indiciu sau ieșirea valorilor corecte
echo $hint === "" ? "nici o sugestie" : $hint;
?>

Grupa 18 sau grupa a VIII-a principală

Grupa a VIII-a principală, numerotată VIII A sau 18, cuprinde gazele rare (nobile) heliu, He, neon, Ne, argon, Ar, kripton, Kr, xenon, Xe, radon, Rn. 

 

Grupa 2 sau grupa a II-a principală

Grupa a II-a principală a sistemului periodic, numerotată II A sau 2, cuprinde elementele: beriliu, Be, magneziu, Mg, calciu, Ca, stronțiu, Sr, bariu, și radiu, Ra. Această grupă se mai numește grupa metalelor alcalino-pământoase. 

Despre Lecții-Virtuale.ro

Lecții-Virtuale este o platformă educațională care oferă suport în vederea pregătirii pentru Evaluare Națională și Bacalaureat la Matematică, Fizică și Chimie. Lecțiile noastre sunt alcătuite din filme și exerciții și probleme cu tot cu rezolvări. Platforma noastră este o soluție ideală pentru școala online. Pentru facilitarea activității profesorilor în cadrul ecosistemului GSuite de la Google am implementat butonul Google Classroom. Scopul nostru este să ne concentrăm pe prezentarea noțiunilor și fenomenelor într-o manieră care să stimuleze înțelegerea și nu memorarea mecanică. Ne propunem să facilităm accesul la conținut educațional de calitate mai ales elevilor cu venituri mai modeste care nu își pemit meditații particulare. Sperăm să vă simțiti bine alături de noi și să invățați lucruri folositoare. Hai România!

Newsletter

Abonează-te la Newsletter pentru a fi la curent cu toate ofertele noastre.

Parteneri

EduApps partener Lectii Virtuale UiPath partener Lectii Virtuale Scoala365 partener Lectii Virtuale CCD Galați partener Lectii Virtuale

2024 © Lecții-virtuale.ro Toate drepturile rezervate
Termeni   Despre   Contact   Confidenţialitate   Cariere Parteneri