Pagina de start a forumului CS-STICKS.IDLE.RO
Inregistrare • Cautare • FAQ • Membri • Grupuri • Autentificare
Tutorial Mysql ;)

 
Raspunde la subiect    Pagina de start a forumului CS-STICKS.IDLE.RO » ...:::][ TuToRiALe [ IsTaLaRi & ConfiGuRi ] ][:::... Subiectul anterior
Subiectul urmator
Tutorial Mysql ;)
Autor Mesaj
NGEORGE
Administrator
Administrator
NGEORGE

Data inscrierii: 13/Iul/2005
Mesaje: 57
Localitate: BUCURESTI

Mesaj Tutorial Mysql ;) Raspunde cu citat (quote)
Notiuni de baza
Bazele de date sunt utilizate pentru stocarea informatiilor in vederea furnizarii ulterioare in functie de solicitarea primita.
MySQL este un sistem de baze de date functional independent.

In PHP exista functii pentru toate operatiilor executate asupra bazelor de date MySQL.

Administrarea MySQL se poate face din linie de comanda sau utilizând browserul si accesand aplicatia numita PHPMyAdmin scrisa in PHP.

Cele mai uzuale operatii cu bazele de date sunt:
Comanda Semnificatie
CREATE creaza o baza de date sau un tabel
DROP sterge o baza de date sau un tabel
INSERT adauga inregistrari intr-un tabel
DELETE sterge inregistrari dintr-un tabel
UPDATE updateaza inregistrarile dintr-un tabel
SELECT selecteaza un tabel
ALTER alterarea unui tabel


In MySQL spatiul alocat pe discul serverului este functie de tipul de date. Cateva din tipurile de date folosite in bazele de date MySQL sunt: Tip Semnificatie
int() numar intreg 32 biti
bigint() numar intreg 64 biti
tinyint() numar intreg (-128 la 127 sau 0 la 255) 8 biti
mediumint() numar intreg 24 biti
smallint() numar intreg 16 biti
char() sectiune cu extindere fixa de la 0 la 255 caractere
varchar() sectiune cu mărime variabila de la 0 la 255 caractere
float() numar mic cu virgula flotanta
double numar mare cu virgula flotanta
text sir cu maximum 65535 caractere
date() data in compus YYYY-MM-DD
date data in format YYYY-MM-DD HH:MM:SS
time ora in format HH:MM:SS


Pentru ca baza de date sa fuctioneze mai bine coloanelor li s-au adaugat modificatori de coloana.

Tipul de date intregi incep de la valori negative la pozitive. Daca se adauga optiunea UNSIGNED, care este un modificator de coloana, nu vor mai fi valori negative ci vor incepe de la 0.

Alti modificatori sunt:
AUTO_INCREMENT functioneaza cu absolut orice tip intreg. La fiecare rand nou adaugat in baza de date numarul asociat va fi incrementat.
NULL inseamna fara valoare (diferit de spatiu sau zero).
NOT NULL inseamna ca indiferent ce inregistrare va fi considerata ceva.
PRIMARY KEY este rolul primei coloane din tabel, totodata reprezentand elementul de referinta pentru fiecare linie.

Conectarea la baza de date
De cate ori vom lucra cu MySQL va trebui sa ne conectam la baza de date folosind o anume sintaxa. Vom salva aceasta secventa de cod cu numele conexiune.php putand fi folosita ulterior in mai multe scripturi utilizand functia include().


Cod:
/* urmeaza fiesierul conexiune.php */
<php>


mysql_connect() este functia prin care ne conectam la baza de date cu urmatorii paramatrii: numele serverului, nume utilizator si parola pentru conectarea la baza de date.

Variabila $conexiune va avea o valoarea TRUE sau FALSE functie de rezultatul conectarii la serverul MySQL folosind functia mysql_connect(), iar in cazul esuarii va afisa mesajul continut de constructia die().

mysql_select_db este functia care stabileste baza de date la care ne vom conecta, avand ca parametrii numele bazei de date si identificatorul de acces la conexiunea catre serverul MySQL.

In mod similar variabila $bazadate folosind functia mysql_select_db va afisa in cazul negasirii bazei de date mesajul continut de die.

Puteti modifica variabilele din fisierul conexiune.php in functie de configurarile propriei baze de date:
$hostname=adresa serverului, de cele mai multe ori este localhost dar pentru siguranta intrebati administratorul serverului
$username=username-ul de conectare la baza de date
$password= parola de conectare la baza de date
$database=numele bazei de date

Dupa ce operatiile dorite au fost executate cu baza de date va necesită sa inchidem conexiunea folosind functia mysql_close() avand ca argument datele de acces la serverul MySQL.


Cod:
mysql_close($conexiune);

Anterior am salvat intr-un fisier php numele utilizator si parola care poate parea un fapt riscant. Codul php este interpretat de server si doar rezultatul este afisat, deci datele continute nu vor fi afisate in browser vizitatorului.

INSERT - Introducere date
INSERT este comanda pentru introducerea datelor in baza de date. Cel mai frecvent mod de introducere a datelor este preluarea lor dintr-un formular adecvat structurii bazei de date.
Sintaxa pentru introducerea datelor in tabelul bazei de date este:


Cod:
INSERT INTO nume_tabel (coloana_1, coloana_2,..., coloana_n) values ('valoare_1','valoare_2',...,'valoare_n');

Exemplu: introducem date intr-un formular cu 2 campuri nume si prenume si apoi cu scriptul insert.php datele se introduc in baza de date.


Cod:
/* urmeaza fisierul adaugare.html */
<html>
<head><title>Formular</title>
</head>
<body>
<b>Adaugare inregistrari</b>
<form>
Nume: <input><br>
Prenume: <input><br>
<input>
</form>
</body>
</html>
/* urmeaza fisierul insert.php */
<php>


In functie de valoarea mysql_query este afisat un mesaj privind introducerea datelor in tabel.

In tutorialul de PHP am discutat ca asociem un nume (name) fiecarui camp din formular. La apasarea butonului de trimitere datele sunt preluate de un script care poate identifica datele functie de campul in care au fost introduse.

In exemplul de mai sus datele introduse in campul nume din formular sunt preluate folosind variabila $_POST (pentru ca metoda folosita in formular a fost POST).

SELECT - Preluarea datelor
Proprietatea SELECT poate fi utilizata intr-o comanda mysql_query pentru a alege anumite informatii din tabelul bazei de date.
Sintaxa pentru introducerea datelor in tabelul bazei de date este:


Cod:
$sql=mysql_query("SELECT * FROM nume_tabel");

Pentru a afisa fiecare rand din tabel se foloseste o bucla while si comanda mysql_fetch_row.

Exemplu: afisarea intregului continut al bazei de date

/Cod:
* urmeaza fisierul select.php */
</td>


Datele au fost afisate fiecare intr-o celula a unui tabel.

Folosind functia mysql_num_rows($sql) putem afla numarul de linii continute de baza de date.

Exemplu: acelasi exemplu plus numarul de linii al bazei de date


Cod:
/* urmeaza fisierul select1.php */
</b>


Exemplu: cautarea in baza de date dupa o anumita inregistrare folosind conditia WHERE.


Cod:
/* urmeaza fisierul cautare.html */
<html>
<head><title>Cautare</title>
</head>
<body>
<b>Cautare inregistrari</b>
<form>
Numele cautat: <input><br>
<input>
</form>
</body>
</html>
/* urmeaza fisierul where.php */
</td>


Conditionale
Conditionalele sunt operatori care ne permit sa particularizam interogarea bazei de date.
Operator - Semnificatie
= egalitate
<mai> mai mare
<mai>= mai mare sau egal
!= diferit de
IS NOT NULL are o valoare
IS NULL nu are valoare
BETWEEN in interiorul unui domeniu dat
NOT BETWEEN in afara unui domeniu dat
OR una din cele doua ecuatii este adevarata
|| una din cele doua ecuatii este adevarata
AND amandoua ecuatiile sunt adevarate
&& amandoua ecuatiile sunt adevarate
NOT amandoua ecuatiile sunt false
! amandoua ecuatiile sunt false


Exemplu: cautam in baza de date folosind doua campuri obligatorii (AND, &&)

Cod:
/* urmeaza fisierul cautare1.html */
<html>
<head><title>Cautare 1</title>
</head>
<body>
<b>Cautare inregistrari</b>
<form>
Numele cautat: <input><br>
Prenumele cautat: <input><br>
<input>
</form>
</body>
</html>
/* urmeaza fisierul where1.php */
</td>


LIKE si NOT LIKE
Daca dorim sa facem o cautare mai generala in baza de date, introducand doar cateva caractere, putem folosi simbolurile LIKE sau NOT LIKE. Caracterul _ anunta ca rezultatul va contine inca un caracter in plus iar % inlocuieste zero sau mai numeroase caractere. Astea pot fi adaugate la inceput, la sfarsit sau in cele două parti.
Exemplu: cautare generala întrebuințând LIKE si caracterul % si la inceput si la sfarsit


Cod:
/* urmeaza fisierul cautare2.html */
<html>
<head><title>Cautare 2</title>
</head>
<body>
<b>Cautare inregistrari</b>
<form>
Numele cautat: <input><br>
<input>
</form>
</body>
</html>
/* urmeaza fisierul where2.php */
</td>


UPDATE
Putem modifica valoarea unei inregistrari din baza de date pentru un anume id cu urmatoarea sintaxa:


Cod:
UPDATE nume_tabel SET coloana_1='$nou_coloana_1', coloana_2='$nou_coloana_2',..., coloana_n='$nou_coloana_n' WHERE id='$nou_id';

Cunoscand valoarea identificatorului id al unei inregistrari putem actualiza o inregistrare in baza de date, dar mai inainte trebuie sa afisam inregistrarile pentru a selecta care se potrivesc solicitarilor noastre.

Primul fisier va afisa sub forma unui formular fiecare inregistrare din baza de date. Campurile formularelor sunt completate cu valorile corespunzatoare fiecarei inregistrari, ele putand fi modificate.


Cod:
/* urmeaza fisierul update.php */
<?php
include "conexiune.php";
$query="SELECT * FROM proba WHERE id='$id'";
$result = mysql_query("SELECT * FROM proba");
$num=mysql_numrows($result);
mysql_close();


$i=0;
while ($i <num>

<form>
<input>
Nume: <input>
Prenume: <input>
<input>
</form>

<php>


Al doilea fisier preia datele modificate si le suprascrie in baza de date.


Cod:
/* urmeaza fisierul updated.php */
<php>


DELETE
Stergerea poate fi facuta folosind id-ul inregistrarii dorite cu sintaxa:


Cod:
DELETE FROM nume_tabel WHERE id='$id';

Primul fisier va contine un formular prin care introducem datele care vor fi cautate in baza de date.


Cod:
/* urmeaza fisierul stergere.html */ <html>
<head><title>Stergere inregistrari</title>
</head>
<body>
<b>Cautare inregistrari in vederea stergerii</b>
<p>
<form>
Numele cautat: <input><br>
<input>
</form>
</body>
</html>

Al doilea fisier va afisa rezultatul cautarii si un formular in care vom completa id-ul inregistrarii care dorim s-o stergem.


Cod:
/* urmeaza fisierul delete.php */
</td>
<p>
<form>
ID-ul inregistrarii ce va fi stearsa: <input><br>
<input>
</form>

Al treilea fisier preia id-ul dorit si sterge respective inregistrare.



Cod:
/* urmeaza fisierul delete1.php */
<php>
31/08/2006 18:36 Vezi profilul utilizatorului Trimite mesaj privat
CocoChanels
Junior
Junior
CocoChanels

Data inscrierii: 30/Iun/2009
Mesaje: 2
Localitate: France

Mesaj Who knows where to download XRumer 5.0 Palladium? Raspunde cu citat (quote)
Who knows where to download XRumer 5.0 Palladium?
Help, please. All recommend this program to effectively advertise on the Internet, this is the best program!
30/06/2009 14:15 Vezi profilul utilizatorului Trimite mesaj privat Trimite un mesaj
CocoChanels
Junior
Junior
CocoChanels

Data inscrierii: 30/Iun/2009
Mesaje: 2
Localitate: France

Mesaj huh.... well.. Raspunde cu citat (quote)
no any cracks(((
Think, XRumer 5.0 Palladium is really BEST software for promo and for SEO!
21/07/2009 17:59 Vezi profilul utilizatorului Trimite mesaj privat Trimite un mesaj
Afiseaza mesajele pentru a le previzualiza:    
Raspunde la subiect    Pagina de start a forumului CS-STICKS.IDLE.RO » ...:::][ TuToRiALe [ IsTaLaRi & ConfiGuRi ] ][:::... Ora este GMT + 3 ore
Pagina 1 din 1

 
Mergi direct la: 
Nu puteti crea un subiect nou in acest forum
Nu puteti raspunde in subiectele acestui forum
Nu puteti modifica mesajele proprii din acest forum
Nu puteti sterge mesajele proprii din acest forum
Nu puteti vota in chestionarele din acest forum


Powered by phpBB © 2001, 2005 phpBB Group
Fa-ti si tu propriul forum GRATUIT, pe www.myforum.ro