Documente Academic
Documente Profesional
Documente Cultură
Curs PHP
Curs PHP
Introducere
Pentru mult lume, principala raiune de a nva un limbaj precum PHP ar fi interaciunea pe
care o ofer cu bazele de date. In acest curs cutm s explicm cum se folosete PHP i
MySQL, pentru a memora informaii pe Web i cum includem toate astea pe site-ul Web. Pentru a
parcurge acest curs sunt necesare cel puin elementele de baz privind folosirea PHP. Se
recomand deci parcurgerea cursului de PHP, nainte de a continua.
De ce mi trebuie o Baz de Date?
Este, de fapt, surprinztor ct de util poate fi o baz de date, mai ales atunci cnd poate fi
folosit ntr-un site Web. Sunt foarte multe lucruri care se pot face ntr-un astfel de caz, de la
afiarea unor simple liste i pn la producerea integral a paginilor Web dintr-o baz de date.
Cteva exemple cu PHP i MySQL, folosite mpreun, sunt:
mult timp pentru aducere la zi i ncrcare. Cu PHP i MySQL ntregul site Web se poate
reduce la unul sau dou scripturi PHP care s acceseze o baz de date MySQL pentru a
obine informaiile pentru paginile Web. Pentru a actualiza sau a modifica proiectul
centrului Web nu trebuie s schimbm dect o pagin.
De ce e nevoie?
Sunt necesare trei componente pentru a putea rula scripturi PHP care s acceseze baze de date
cu MySQL.
1. n primul rnd, este nevoie de un server Web. Acesta poate fi sau pe calculatorul
personal sau pe o 'gazd' Web. Oricare pachet - oricare tip de server Web este acceptat
i va lucra cu PHP i MySQL, dar cel mai recomandat este Apache, care e public i
gratis.
2. PHP trebuie s fie instalat pe server. Dac nu este deja instalat, putei s o facei sau s
apelai la administratorul serverului Web, n acest sens. Pachetul de instalare poate fi
descrcat - preluat de la http://PHP.net i este deasemeni public - gratuit. Dac nu suntei
sigur dac este sau nu instalat, o s vedei mai jos cum v putei lmuri.
3. n fine, avei nevoie de MySQL. Acesta este de fapt pachetul de programe pentru
gestiunea bazelor de date. Putei folosi deasemeni multe alte sisteme de baze de date
(SQL, Oracle etc.) dar aici discutm despre PHP/MySQL, deci avem nevoie de MySQL
(cu toate c se folosesc comenzi care in de limbajul SQL i 'merg' la oricare din sistemele
de baze de date SQL). i pachetul MySQL este public - gratuit, putnd fi preluat din
pagina oficial a firmei MySQL. Dar i n cazul MySQL trebuie s verificm mai nti dac
nu cumva este deja instalat.
Dac nu putei instala PHP i MySQL, sau dac gazda Web nu v-o permite, putei apela la alt
server Web, la alt gazd. Spre exemplu, Freedom2Surf este un server Web public, care acord
acces liber i suport PHP, avnd MySQL instalat. HostRocket este un alt server excelent care
ofer spaiu de pn la 300 MO, i include PHP, MySQL i multe altele, dar percepe o tax de
abonament de 10 USD pe lun.
Cum aflm dac PHP i MySQL sunt instalate
Exist un test simplu, att pentru PHP ct i pentru MySQL:
Lansai - deschidei un editor de texte i scriei urmtoarele:
<?
phpinfo();
?>
salvnd fiierul cu un nume precum phpinfo.php
Apoi ncrcai acest fiier n spaiul web, pe server, apelndu-l, dup aceea, din navigator. Dac
PHP-ul este deja instalat vei cpta o pagin plin cu toate detaliile instalrii respective.
Parcurgei atunci aceste informaii. Dac gsii o seciune despre MySQL atunci nseamn c
MySQL este i el deja instalat.
Gestiunea Bazelor de date
Chiar dac tot ce ine de administrarea bazelor de date poate fi realizat prin scripturi PHP,
instalarea pe server a pachetului PHPMyAdmin poate aduce un plus de confort. Este un excelent
set de scripturi care asigur o interfa administrativ pentru bazele de date MySQL. Si mai este
i public-gratuit.
Cu el putei aduga, elimina, edita, salva i vizualiza bazele de date, fiind deosebit de util pentru
depanare.
Scopul acestui curs
Urmrim familiarizarea cursantului cu cteva din elementele de baz ale folosirii PHP mpreun
cu MySQL. Pentru asta vom urmri mereu un exemplu. Parcurgnd cursul de fa vei nva cum
s creai un program bazat pe Web pentru a contacta colaboratorii - o variant de caiet de
adrese. Acest program v permite s memorai numele mpreun cu adresa corespunztoare,
adresa e-mail i numrul de telefon. Vei putea s actualizai nregistrrile, s cutai n baza de
date. Existnd i opiunea de a trimite un mesaj email la toi cei din baza de date (reinei ns:
acest sistem nu va fi folosit pentru expedierea unor mesaje nesolicitate).
Dup realizarea acestui sistem vei fi, cu siguran, n msur s creai aproape orice tip de baz
de date pe Web.
Partea 2-a
n lecia urmtoare vom vedea cum proiectm - cum realizm o baz de date n MySQL.
Dac avei pachetul PHPMyAdmin (sau un program similar) instalat, atunci putei s
intrai acolo i s v conectai introducnd contul (numele de utilizator) i parola. Dac
nu avei aa ceva, atunci trebuie s facei ntreaga administrare a bazelor de date folosind
script-uri PHP (i o putei face).
Cmpuri
Exist o larg varietate de cmpuri i de atribute disponibile n MySQL i vom discuta
doar cteva din ele:
Tipul cmpului
TINYINT
SMALLINT
MEDIUMINT
INT
VARCHAR
TEXT
Descriere
Numr Intreg mic
Numr Intreg mic
Numr Intreg
Numr Intreg
Text (maximum 256 caractere)
Text
Acestea sunt doar cteva dintre cmpurile disponibile. O cutare pe Internet ne poate
furniza lista cu toate tipurile de cmpuri permise.
Tipul
INT
VARCHAR
VARCHAR
VARCHAR
VARCHAR
VARCHAR
VARCHAR
VARCHAR
Lungimea
6
15
15
20
20
20
30
30
Descrierea
Un identificator unic pentru fiecare nregistrare
Numele de familie al persoanei
Numele de botez al persoanei
Numrul de telefon
Numrul de telefon mobil
Numrul de fax
Adresa e-mail
Pagina Web personal
urmtoare.
<?
$user="username";
$password="password";
$database="database";
mysql_connect(localhost,$user,$password);
@mysql_select_db($database) or die( "Baza de date nu poate fi selectata");
$query="CREATE TABLE contacts (id int(6) NOT NULL auto_increment,nume
varchar(15) NOT NULL,prenume varchar(15) NOT NULL,telefon varchar(20)
NOT NULL,mobil varchar(20) NOT NULL,fax varchar(20) NOT NULL,email
varchar(30) NOT NULL,web varchar(30) NOT NULL,PRIMARY KEY (id),UNIQUE
id (id),KEY id_2 (id))";
mysql_query($query);
mysql_close();
?>
Introducei numele bazei de date, contul MySQL i parola MySQL n poziiile
corespunztoare din primele 3 linii de mai sus.
Partea 3-a
In lecia urmtoare vom vedea cum ne conectm la o baz de date folosind PHP i vom
nva cum s adugm informaii n noua noastr baz de date.
Desigur, aici s-ar putea discuta dac nu-i riscant s pstrm parola ntr-un fiier. Nu
trebuie s v alarmai, ns, deoarece sursa PHP este prelucrat de server nainte de a fi
trimis navigatorului, astfel ncacirc;t este imposibil pentru orice utilizator s vad
scriptul.
Mai apoi, avem nevoie de o comand care s lanseze conexiunea la baza de date:
mysql_connect(localhost,$username,$password);
Aceast linie spune PHP-ului s se conecteze la serverul de baze de date MySQL la
'localhost' (localhost se numete serverul pe care ruleaz PHP-ul. In afara cazului n care
gazda Web indic altceva, vom folosi localhost) folosind numele de cont memorat n
$username i parola din $password.
Mai nainte de a discuta cum lucrm cu baza de date, vom vedea nc o comand:
mysql_close();
Aceasta este o comand foarte important care nchide conexiunea cu serverul de baze de
date. Scriptul va rula nc, dac nu includem aceast comand, iar prea multe conexiuni
MySQL deschise pot cauza probleme serverului web. Este un obicei bun s includem
comanda de nchidere de mai sus dup ce am introdus toate comenzile ctre baza de date,
pentru a menine platforma n bun stare.
Execuia comenzilor
Dup conectarea la server i selecia bazei de date dorite, putem ncepe execuia
comenzilor pe server.
Exist dou moduri de a executa o comand. Prima revine pur i simplu la introducerea
comenzii n PHP. Asta merge atunci cnd nu apar rezultate ca urmare a execuiei
comenzii.
Cea de a doua variant este s definim comanda ca o variabil. Asta va atribui variabilei
rezultatele operaiei.
In aceast lecie vom folosi prima cale, deoarece nu ateptm rspuns de la baze de date.
Comanda va arta cam aa:
mysql_query($query);
Folosirea acestei forme a comenzii este util pentru c repetm pur i simplu aceiai
comand iari i iari fr a fi nevoie s memorm altele. Tot ce avem de fcut este s
schimbm variabila.
Introducerea datelor
Acum ne vom ntoarce la baza de date cu adrese de contact, pe care am creat-o n lecia
anterioar. Pentru a introduce primele informaii n baza de date:
Nume: Ionescu
Prenume: Gheorghe
Telefon: 021 3456789
Mobil: 0724 334455
Fax: 0264 567891
E-mail: ionescughe@personal.ro
Web: http://www.cinestie.inext.ro
Toate acestea vor fi introduse cu o singur comand:
$query = "INSERT INTO contacts VALUES ('','Ionescu','Gheorghe','021
3456789','0724 334455','0264
567891','ionescughe@personal.ro','http://www.cinestie.inext.ro')";
Pare puin cam confuz la prima vedere. S lmurim puin lucrurile.
Ma nti, apare variabila $query creia i atribuim o comand (vezi paragraful precedent).
Urmtoarea parte, adic:
INSERT INTO contacts VALUES
este destul de uor de neles. Ea spune PHP-ului s insereze n tabel numit contacts
valorile care urmeaz (scrise ntre paranteze).
Acolo, ntre paranteze, avem toate cmpurile de adugat. Apar toate cmpurile n ordine
i sunt inserate informaiile dintre ghilimele. Spre exemplu:
Ionescu
va fi inserat n al 2-lea cmp, care, n aceast tabel este cmpul 'nume' .
Poate ai reinut c nu am inserat nimic n primul cmp din baza de date (id). Asta din
cauz c acest cmp va fi un cmp index, elementul unic de identificare. Fiecare
nregistrare din baza de date va avea un unic ID. Din aceast cauz, cnd ncrcm baza
de date, vom pune ID pe 'Auto Increment'. Asta nseamn c, ne-atribuindu-i nici o
valoare, el va lua la fiecare nregistrare urmtoarea valoare din ir. Iar prima nregistrare
va avea valoarea ID=1 .
Partea 4-a
In lecia urmtoare vom vedea cum folosim formularele i variabilele pentru a insera
informaii i cum afim informaiile din baza de date.
Partea 4-a:
Introducere
Pn acum, am creat o baz de date i am ncrcat n ea informaii. In aceast lecie vom
vedea cum se realizeaz o pagin de intrare pentru aceast baz de date, i cum se
afieaz coninutul acesteia.
Scoaterea Datelor
Acum avem n baza de date cel pu'in o nregistrare, dac nu mai multe. Se pune
problema cum vizualizm, cum scoatem aceste date folosind PHP. Cunoaterea
elementelor de programare din PHP este necesar, recomandabil fiind parcurgerea Minicursului de PHP naintea acestuia.
Prima comand la care vom apela este comanda SELECT din SQL, folosit ntr-o cerere
MySQL n forma:
SELECT * FROM contacts
Aceasta este o comand de baz din MySQL, care va spune script-ului s selecteze toate
nregistrrile din tabela contacts. Dar, de data aceasta, comanda furnizeaz un rezultat, ea
va trebui executat atribuin rezultatele unei variabile:
Numrarea liniilor
Avem o comand special n MySQL pentru calculul numrului de linii din tabel. Este
important pentru c n baza de date se fac uzual numeroase actualizri, completri,
tergeri.
$num=mysql_numrows($rezultat);
Astfel, variabila $num va cpta ca valoare numrul de linii din $rezultat (adic tocmai
din baza de date). Acest numr va putea fi folosit n continuare pentru ciclul n care se vor
analiza i desface n variable separate cmpurile fiecrei linii.
Construirea ciclului
Avem de scris un ciclu pentru a selecta din tabel (din rezultat) linie cu linie.... Definim un
indice, o variabil $i care va parcurge (cu incrementare) valorile de la 1 la $num .
$i=0;
while ($i < $num) {
OPERATIILE ASUPRA LINIEI
++$i;
}
Acesta este un ciclu tipic n PHP i va executa ansamblul numit OPERATIILE ASUPRA
LINIEI de exact $num ori, adic de attea ori ct trebuie. La fiecare reluare $i fiind mrit
cu o unitate. Astfel $i poate fi folosit i pentru a preciza numrul liniei care se
prelucreaz.
Astfel, pentru a extrage fiecare component din baza noastr de date, vom folosi
urmtoarele instruciuni:
$nume=mysql_result($result,$i,"nume");
$prenume=mysql_result($result,$i,"prenume");
$telefon=mysql_result($result,$i,"telefon");
$mobil=mysql_result($result,$i,"mobil");
$fax=mysql_result($result,$i,"fax");
$email=mysql_result($result,$i,"email");
$web=mysql_result($result,$i,"web");
Nu ne-am ocupat aici de cmpul ID (dei o puteam face) pentru c nu ne este necesar la
afiare datelor.
Combinarea Script-ului
Acum putem scrie script-ul complet pentru scoaterea datelor. In acest script datele nu sunt
formatate, adic vor fi afiate toate cu acelai font, predefinit.
<?
$username="username";
$password="password";
$database="baza_noastra_de_date";
mysql_connect(localhost,$username,$password);
@mysql_select_db($database) or die( "Baza de date nu poate fi selectata");
$query="SELECT * FROM contacts";
$rezultat=mysql_query($query);
$num=mysql_numrows($rezultat);
mysql_close();
echo "<b><center>Database Output</center></b><br><br>";
$i=0;
while ($i < $num) {
$nume=mysql_result($rezultat,$i,"nume");
$prenume=mysql_result($result,$i,"prenume");
$telefon=mysql_result($result,$i,"telefon");
$mobil=mysql_result($result,$i,"mobil");
$fax=mysql_result($result,$i,"fax");
$email=mysql_result($result,$i,"email");
$web=mysql_result($result,$i,"web");
Partea 5-a
In lecia urmtoare vom vedea cum realizm scoaterea datelor i cum selectm diferite
date din baza de date.
Partea 5-a:
Introducere
Pn acum am vzut cum creem o baz de date - tabelele din care este format, cum
inserm informaiile i cum afim datele din baza de date. In aceast lecie vom vedea
mai multe moduri de a afia - scoate date din baza de date.
Formatarea scoaterii
In ultima parte a leciei precedente am scos o list cu toate persoanele nregistrate n baza
de date. De fapt am ajuns s avem definite variabilele care permit scoaterea sau afiarea,
ncheind cu o comand destul de simpl de afiare (echo) fr a o explica. Desigur, datele
din tabel ar trebui prezentate pe ecran tot n forma unui tabel. Iar asta nu-i prea complicat.
In fond dac tim cum s afim (scoatem) fiecare variabil n parte, atunci tot restul
privind formatarea, organizarea ca tabel, etc., este doar legat de cunoaterea HTML.
Tot ce avem de fcut deci este s folosim PHP pentru scoaterile HTML incluznd
variabilele n zonele corecte. Cel mai simplu este s nchidem tagul PHP i s introducem
liniile normale din HTML. Oridecte ori ajungem la o variabil o vom include folosind o
secven de forma:
<? echo "$numele_variabilei"; ?>
Putem atunci s folosim un ciclu PHP pentru a repeta o secven de cod ca cea de mai
sus, la includerea variabilelor ntr-un tablou. Spre exemplu, folosind secvena de cod din
lecia precedent cu ciclul corespunztor, putem formata scoaterile pentru ca s apar
ntr-o tabel mare:
<table border="0" cellspacing="2" cellpadding="2">
<tr>
care construiete o legtur email la adresa transmis de variabila $email . Asta arat una
dintre calitile importante i utile ale folosirii PHP pentru includerea datelor MySQL .
Adic prin astfel de scoateri putem face paginile Web dinamice.
Partea 6-a
In lecia urmtoare vom vedea cteva moduri de a scoate date din baza de date, precum i
cum putem s controlm erorile prin numrarea liniilor.
Partea 6-a:
Introducere
In ultimele dou lecii am vzut cum extragem date din baza de date i cum le afim pe
ecran. Acum vom ajunge la aspectele finale ale afirii datelor, prin selectarea
elementelor dorite i controlul erorilor (stoparea mesajelor de eroare) atunci cnd
scoatem date.
Interceptarea Erorilor
Prin scoaterea tuturor informaiilor dintr-o baz de date, este puin probabil s ajungem la
situaia cnd nu mai sunt date. Dar dac am permis ajustri i, tergeri i actualizri ale
nregistrrilor, atunci se prea poate s ajungem la o eroare. Din fericire, cu PHP i
MySQL, avem un mod simplu de a evita o astfel de situaie folosind:
$num=mysql_numrows($rezultat);
unde $rezultat conine rezultatul unei cereri - interogri a bazei de date ( precum
selectarea tuturor nregistrrilor). Aa cum am discutat mai sus, aceasta va atribui
variabilei $num numrul de linii din rezultat (care s-a utilizat ntr-un ciclu, n lecia a 4a). Putem insera n ciclu o comand de captare/tratare a erorilor folosind o instruciune IF
:
if ($num==0) {
echo "Baza de date nu conine nici o nregistrare";
} else {
Output Loop
}
Putem dezvolta ramura asta fcnd-o mai prietenoas. Spre exemplu, oferind o legtur la
pagina Add Data, de introducere de informaii n baza de date, atunci cnd ea este vid.
Ordonarea datelor
Nu numai c putem scoate datele n funcie de coninutul unui cmp, dar putem ordona
aceste date pe baza unei reguli aplicat coninutului unei coloane (spre exemplu aranjnd
utilizatorii n ordine alfabetic). In mod normal, afiarea n urma unei interogri se face n
ordinea stabilit de identificatorul ID, pornind de la 1 n sus. Putem ns alege modul de
ordonare (sortarea) dup oricare coloan din tabel.
Spre exemplu, o ordonare util ar putea fi dup numele de botez. Asta nsemnnd n
ordine ascendent (cresctoare, de la A la Z i de la 1 la 10...). Pentru a obine un astfel de
rezultat folosim urmtoarea cerere:
SELECT * FROM contacts ORDER BY prenume ASC
Putem folosi, desigur i ordonarea descendent, specificnd DESC n locul lui ASC .
Valoarea care i se atribuie (ca mai sus) variabilei $num este foarte important, nu numai
pentru cicluri i captarea erorilor. Un exemplu poate fi scoaterea doar a ultimelor 5
nregistrri adugate bazei de date. Mai nti, avem ordonarea natural, stabilit de ID,
(ultima nregistrare avnd valoarea maxim a ID), dar vom alege ordinea descendent.
Astfel vom avea nregistrrile ncepnd cu cea mai recent i terminnd cu cea mai
veche. Mai trebuie doar s numrm, afind doar primele 5.
Desigur, nainte de a ncepe ciclul de cinci, trebuie s ne asigurm c $num este mai mare
dect 5 . Avem deci o secven de forma:
if ($num<5) {
$to=$num;
}else{
$to=5;
}
$i=0;
while ($i < $to) {
SECVENTA DE COMENZI mysql PENTRU SCOATERE
Cu alte cuvinte, dac avem mai mult de cinci linii n tabel atunci ciclul se va face de la 0
la 5. In caz contrar, dac sunt mai puin de 5 linii, ciclul va parcurge exact numrul
respectiv de linii.
Cmpul ID
Atunci cnd, n primele lecii am creat baza de date (cartea de adrese), am inclus un cmp
numeric numit id. Pe care l-am stabilit ca auto_increment i i-am dat rolul de cmp
primar. Am discutat cum acesta are rolul de identificator unic pentru fiecare nregistrare
din baza de date. Acum facem un pas nainte, folosind acest cmp pentru a selecta
anumite nregistrri din baza de date.
s avem o pagin Web generat dinamic dintr-o baz de date cu un singur script PHP,
putem scrie script-ul ca s includ pagini Web distincte ca nregistrri ale bazei de date.
Atunci, folosind cmpul id, putem selecta fiecare pagin individual plasnd-o la soatere.
Putem chiar folosi chiar URL-ul paginii pentru a specifica nregistrarea dorit
http://www.centrul_propriu.ro/stiri/items.php?item=5476
Iar script-ul PHP s caute nregistrarea care are numrul de ordine (id-ul) care corespunde
valorii variabilei $item, care n acest caz este 5476
Part 7
In lecia urmtoare vom vedea cum creem pagina pentru actualizarea informaiilor din
baza de date.
Partea 7-a:
Introducere
Pn acum am nvat cum s punem informaiile n baza de date MySQL, cum s vedem
aceste informaii din baza de date, selectnd care din ele vrem s le vedem. In aceast
lecie vom vedea cum facem cele dou aciuni finale, actualizarea bazei de date i
tergerea unor nregistrri din ea.
Script-ul de actualizare
Am vzut n lecia anterioar cum creem o legtur pentru fiecare nregistrare pentru a ne
poziiona n scriptul de actualizare. Prin folosirea variabilei $id , legturile respective pot
"$telefon"?>"><br>
Numrul de Mobil: <input type="text" value="ud_mobile" value="<? echo
"$mobil"?>"><br>
Numrul de Fax: <input type="text" value="ud_fax" value="<? echo "$fax"?
>"><br>
Adresa E-mail: <input type="text" value="ud_email" value="<? echo "$email"?
>"><br>
Adresa Web: <input type="text" value="ud_web" value="<? echo "$web"?
>"><br>
<input type="Submit" value="Update">
</form>
Aa cum se poate vedea, aceast secven construiete (scoate) un formular standard, dar
n locul zonelor goale, aa cum apreau n formularul pentru introducerea datelor, de data
asta avem coninutul cmpului respectiv din nregistrarea n cauz (care-i de actualizat).
Asta l face mai adaptat scopului, mai comod de folosit.
mysql_connect(localhost,$username,$password);
$query="UPDATE contacts WHERE id='$ud_id' SET first='$ud_first'
last='$ud_last' phone='$ud_phone' mobile='$ud_mobile' fax='$ud_fax'
email='$ud_email' web='$ud_web'";
mysql_query($query);
echo "Actualizarea s-a fcut";
mysql_close();
Asta va actualiza baza de date transmind i o confirmare utilizatorului.
Stergerea nregistrrilor
Ultima parte a acestei lecii privete modul cum tergem o nregistrare dim baza de date.
Ca i cu pagina de actualizare, vom construi o pagin pentru a terge una sau mai multe
linii din baza de date. Trebuie s-i transmitem poziia (ID-ul) nregistrrii, printr-un URL,
spre exemplu:
delete.php?id=9
Scriptul care va face asta, numit delete.php, este aproape identic cu cel de actualizare a
bazei de date, cu excepia comenzii MySQL (modului n care este construit cererea). In
locul comenzii SQL UPDATE , vom folosi:
DELETE FROM contacts WHERE id='$id'
Ciclurile
La acest punct este momentul s menionm i un alt mod de folosire a ciclurilor cu o
baz de date. Putem folosi un ciclu pentru a executa un ir de cereri. Spre exemplu, dac
trebuie s schimbm - extragem toate nregistrrile dintr-o baz de date n care apare ca
prenume Serban pentru a realiza un Website www.serban.ro:
Partea Standard de Conectare la Baza de Date
$query=" SELECT * FROM contacts WHERE prenume='Serban'";
$rezultat=mysql_query($query);
$num=mysql_numrows($rezultat);
$i=0;
while ($i < $num) {
$id=mysql_result($rezultat,$i,"id");
$query1="UPDATE contacts SET web='http://www.serban.ro' WHERE id='$id'";
mysql_query($query);
++$i;
}
mysql_close();
Partea 8-a
In lecia urmtoare, ultima din acest curs, vom vedea cum s punem grmad toate
componentele script-ului creat i nc cteva alte amnunte privind folosirea MySQL.
Partea 8-a
Introducere
Pe parcursul acestui curs am vzut cum s folosim PHP-ul pentru a interaciona cu un
sistem de baze de date MySQL (sau SQL) i cum s folosim comenzile uzuale (cele mai
necesare). Am exemplificat, cu modul de realizare a unei baze de date de tip carte de
adrese (ca sistem de management a contactelor ?). In aceast lecie final, vom vedea
cteva "trucuri" MySQL i vom scrie versiunea definitiv (final) a script-ului construit
pe parcursul acestui curs.
Cutarea
Se poate realiza i o cutare limitat n baza de date folosind funcia special din MySQL.
Adic prin folosirea funciei LIKE , n forma:
SELECT * FROM nume_tabela WHERE nume_camp LIKE '%$string%'
Asta nsemn c LIKE va spune bazei de date s foloseasc posibilitile proprii de
cutare. Semnele % au semnificaia c orice alte date pot s apar n poziia lor i
variabila $string va conine cererea de cutare. Adic putem avea acolo un cuvnt, sau un
numr, spre exemplu:
LIKE '%pian%'
ceea ce va conduce la scoaterea liniilor care includ cuvntul pian n cmpul specificat.
Similar, putem renuna la unul din semnele % astfel ca s precizm poziia irului de
caractere:
LIKE 'pian%'
Astfel vom putea selecta doar liniile n care cmpul specificat ncepe cu prefixul pian,
caz n care, spre exemplu, expresia urmtoare va fi evitat:
Un pian se afl pe scen.
Finalizarea Script-ului
Pe parcursul acestui mini-curs am prezentat diferite poriuni de cod ale script-ului pentru
construcia bazei de date contacts. Putei descrca script-ul complet ca un fiier
comprimat zip, pentru a examina ntreaga aplicaie (vezi legturile).
Concluzii
Acum, ncheind acest curs, ar trebui s tii s folosii PHP i MySQL mpreun pentru a
crea o baz de date - accesibil pe Web, precum i pentru a scrie programe de acces la
baza de date. Folosirea bazelor de date pe Web deschide noi i mari posibiliti de lucru
n Internet i poate face mult mai puternic un centru Web, economisind timpul de
actualizare, permind utilizatorilor s interacioneze (s rspund) i multe altele.