| Subiectul anterior :: Subiectul urmator |
| Autor |
Mesaj |
Florian Administrator


Data inscrierii: 10/Sep/2007 Mesaje: 211 Localitate: Virtuale-Zone
|
Trimis: 08/10/2007 21:21 Titlul subiectului: [MySql] Tutorial |
|
|
*************LECTIA I*************
Cel mai întrebuințat tip de baza de date, la ora actuala, care lucreaza cu PHP-ul, este MySql-ul. Reprezinta un limbaj foarte usor de invatat, si care este accesibil tututor claselor de programatori, intrucat nu ai necesitate de cunostinte extraordinar de avansate, pentru a invata lucrul cu baze de date MySql.
Ce este o baza de date?
O baza de date este o structura, in care sunt retinute anumite date ale siteului (useri, vizite, anumite statistici, anumite componente ale siteului, posturi si topicuri in cazul unui forum, etc.). MySql este o baza de date relationala. Ea este reprezentata de tabele in care este retinuta informatia. Fiecare tabel este constituit din linii si coloane. O coloana a unui tabel reprezinta tipul de informatie retinuta de acea coloana (de tip caracter, de tip numar-intrg, real, natural, de tip obiect). In timp ce coloanele definesc tipul de date
a informatiei retinute, o linie din tabel reprezinta informatia actuala care este stocata. Informatia de pe o linie (un rand) contine valori pt fiecare coloana din tabel.
Exemplu:
Vom ilustra un tabel:
| Cod: |
ID Nume Prenume Varsta Localitate
1 Marcu Florian 16 Roman
2 Voicu Paul 17 Rahova
3. Balint X-ulescu 87 Cimitir
|
Acest tabel stocheaza informatii referitoare la utilizatori. Dupa cum se observa, acest table contine:
* 5 coloane:
-ID: informatie de tip numar intreg pozitiv
-Nume: inforamtie de tipul sir de caractere
-Prenume: informatie de tipul sir de caractere
-Varsta: informatie de tipul numar intreg pozitiv
-Localitate: informatie de tipul sir de caractere.
* 3 randuri, fiecare continand cate o informatie de tipul care il indica coloana.
primul rand: - ID = 1. Nume=Marcu Prenume=Florian Varsta=16 Localitate=Roman.
Deci, ca o recapitulare, o baza de date MySql, contine mai multe tabele. Aceste tabele, contine fiecare coloane, care sunt reprezentate
de cate un tip de informatie stocate, si linii (randuri), care contine informatii egale cu numarul de coloane, si fiecare fiind de tipul indicat de coloana.
Intelegand aceste lucruri, ne va fi usor in explicarea scripturilor MySql, care vor consta, in esenta in scripturi pt crearea unui tabel (+setarea tipurilor coloanelor), inserarea unui rand (linii) intr-un tabel, stergerea unei linii intr-un tabel, updateul unei linii in fisier, afisarea unui tabel dupa un anumit criteriu (descrescator, crescator, etc). _________________ http://marcuflorian.uv.ro |
|
| Sus |
|
 |
Florian Administrator


Data inscrierii: 10/Sep/2007 Mesaje: 211 Localitate: Virtuale-Zone
|
Trimis: 09/10/2007 17:28 Titlul subiectului: |
|
|
****************LECTIA A II-A*************
Vom continua acest tutorial prin a invata cum se creeaza o baza de date MySql. In întâiul rand trebuie sa achizitionam un host si un domeniu. Noi vom folosi in acest tutorial domeniul si hostul free de pe http://phpnet.us, si va recomandam sa-l folositi si dumneavoastra, pentru a fi cat mai usor de exersat. Trebuie sa va faceti un cont aici: http://phpnet.us/signup_form.php . Completati perfect toate campurile, si veti primi prin mail datele de conectare la baza de date. Atentie:
- Username-ul pe care il scrieti va fi adresa siteului: username.phpnet.us.
- Retineti parola!!!
Dupa ce primiti mailul de confirmare, ar necesită sa fie specificate urmatoarele:
FTP Server : ftp.phpnet.us
FTP Login : pn_1100251
FTP Password asta e parola pe care o pui.
MySQL Database Name: MUST CREATE IN CPANEL
MySQL Username : pn_1100251
MySQL Password : asta e parola pe care o pui
MySQL Server: SEE THE CPANEL
Intrati in http://cpanel.phpnet.us , logati-va, introducand la username FPT Login (in cazul meu pn_1100251), iar la parola, parola de la inregistrare. Ne va aparea admin-panelul! Intram in sectiunea MySql Manager (din MANAGE MYSQL). Akum ne va aparea k avem 0 baze de date din 3 posibile. In partea dreapta exista un camp, sub care scris “Create DataBase”. Introducem in acel camp numele bazei de date dorit. Noi vom introduce numele “utilizatori” (fara gilimele), ceea ce va recomandam si voua, pt a urmari exact pasii acestui tutorial. Apasam “Create DataBase”, si vom vedea ca am creat baza de date numita, in cazul nostru “pn_1100251_utilizatori” (fara ghilimele). Aceasta transformare este specifica siteului phpnet.us. Este teribil de important sa stim numele bazei de date, asadar trebuie sa avem grija la transformarile pe care le face hostul/domeniul.
Observatii:
*Nu e neaparat sa alegeti hostul de pe phpnet.us. Noi l-am ales din cauza faptului ca este free si lucreaza cu PHP+MySql, lucru bun pt incepatori. Nu are rost sa dai bani pe un domeniu sau host, dak nu ai cunostintele necesare.
*Serviciile sunt limitate la numarul bazelor de date (in cazul nostru, pe phpnet,us avem voie doar 3 baze de date.).
*Unele servicii iti construiesc ele baza de date, odata cu inregistrarea, numele ei fiindu-ti trimis in mailul de confirmare.
Ultima modificare efectuata de catre Florian la 10/10/2007 18:10, modificat de 1 data in total |
|
| Sus |
|
 |
Florian Administrator


Data inscrierii: 10/Sep/2007 Mesaje: 211 Localitate: Virtuale-Zone
|
Trimis: 10/10/2007 18:05 Titlul subiectului: |
|
|
***********LECTIA A III-A**********
MySql, dupa cum am spus si mai sus, lucreaza impreuna cu PHP. Deci, pt a putea invata trebuie sa stim niste lucruri suficient de minore despre PHP (ex: scrierea varibilelor, atribuirea, etc).
Cea mai buna metoda de a invata mysql este aceea, de a da copy-paste codurilor pe care le vom avea in acest tutorial, sis a vedeti cum functioneaza pe web serverul dumneavoastra.
Conectarea la baza de date.
Avem trebuință de urmatoarele informatii:
• Server – numele serverului
• Database pn_1100251_utilizatori
• Username – pn_1100251
• Password – parola setata de dumneavoastra
Dumneavoastra, veti skimba in functie de datele dumneavoastra.
Iata codul de conectare la baza de date:
| Cod: |
<?php
$hostname="sql1.phpnet.us"; //numele serverului
$username =”pn_1100251"; //usernameul
$password="ParolaMea";
$database=" pn_1100251_utilizatori ";
$conexiune=mysql_connect($hostname,$username,$password)
or die ("Nu ma pot conecta la server"); //ne conectam la server, iar dak apar complicații va fi afisat mesajul din die().
$bazadate=mysql_select_db($database,$conexiune)
or die ("Nu gasesc baza de date"); //ne conectam la baza de date, iar dak apar probleme, va fi afisat mesajul din die().
echo "M-am conectat la baza de date"; //daca nu apar probleme, iar conexiunea va avea success, va fi afisat mesajul: M-am conectat la baza de date!
?>
|
_________________ http://marcuflorian.uv.ro |
|
| Sus |
|
 |
Florian Administrator


Data inscrierii: 10/Sep/2007 Mesaje: 211 Localitate: Virtuale-Zone
|
Trimis: 12/10/2007 17:18 Titlul subiectului: |
|
|
************LECTIA A IV-A**************
Dupa cum va spuneam, o baza de date mysql cuprinde mai multe tabele. In aceasta lectie vom invata cum sa cream un tabel. Asadar, inainte de a introduce informatii in tabel (pe randuri/linii) este necesara definirea tuturor coloanelor, precizandu-se si tipul de informatie care este retinuta in coloana respectiva.
Iata codul de creare a unui tabel:
| Cod: |
<?php
/*Mai intai ne conectam la baza de date, utilizând codul din lectia anterioara: */
$hostname="sql1.phpnet.us"; //numele serverului
$username =”pn_1100251"; //usernameul
$password="ParolaMea";
$database=" pn_1100251_utilizatori ";
$conexiune=mysql_connect($hostname,$username,$password)
or die ("Nu ma pot conecta la server");
$bazadate=mysql_select_db($database,$conexiune)
or die ("Nu gasesc baza de date");
// Acum e momentul sa cream un tabel in baza de date selectata mai sus:
mysql_query("CREATE TABLE exemplu(
id INT NOT NULL AUTO_INCREMENT,
PRIMARY KEY(id),
Nume VARCHAR(30),
Prenume VARCHAR(30),
Localitate VARCHAR(30),
Varsta INT)")
or die(mysql_error());
echo "Tabel creat!";
?>
|
Acum vom explica fiecare instructiune in parte :
-mysql_query() –face trimitere la baza de date selectata de MySql mai inainte;
-CREATE TABLE exemplu – creaza tabelul numit “exemplu” (fara ghilimele).
-id INT NOT NULL AUTO_INCREMENT – creeaza coloana numita “id”, aceasta fiind autoincrementata (adica atunci cand apare un nou rand, valoarea din aceasta se mareste cu 1 fata de valoarea precedenta.). Informatiile retinute de coloana “id” sunt de tip numar intreg (INT).
- Nume VARCHAR(30) –creeaza coloana “Nume”, aceasta retinand informatie de tip sir de caractere, de extindere maxim 30. La fel se intampla si in cazul coloanelor “Prenume” si “Localitate”.
-Varsta INT –creaza coloana numita “Varsta”, aceasta stocand informatii de tip numar intreg.
Asadar, tabelul nostru va arata asa:
ID | Nume | Prenume | Localitate | Varsta
***************************************************** _________________ http://marcuflorian.uv.ro |
|
| Sus |
|
 |
Florian Administrator


Data inscrierii: 10/Sep/2007 Mesaje: 211 Localitate: Virtuale-Zone
|
Trimis: 13/10/2007 11:25 Titlul subiectului: |
|
|
***********LECTIA A V-A *********
Asadar, sa recapitulam ce stim pana acum:
-sa cream o baza de date
-sa ne conectam la o baza de date confecționate anterior
-sa cream un tabel intr-o baza de date.
Acum, apare ceea ce e cel mai important, si anume, inserarea informatiilor in tabel. Deci, de exemplu, sa presupunem ca vrem sa inseram in tabelul “exemplu”, produs anterior, un utilizator al siteului, numit Marcu Florian, din localitatea Bucuresti, si varsta de 18 ani. De asemeni, vom insera si un utilizator numit Bejan Paul, din localitatea Roma, si de 45 de ani. Acest lucru se executa astfel:
| Cod: |
<?php
$hostname="sql1.phpnet.us"; //numele serverului
$username ="pn_1100251"; //usernameul
$password="ParolaMea";
$database=" pn_1100251_utilizatori ";
$conexiune=mysql_connect($hostname,$username,$password)
or die ("Nu ma pot conecta la server");
$bazadate=mysql_select_db($database,$conexiune)
or die ("Nu gasesc baza de date");
// Acum inseram informatiile in tabelul "exemplu" :
mysql_query("INSERT INTO exemplu
(Nume, Prenume, Localitate, Varsta) VALUES('Marcu','Florian','Bucuresti','23' ) ")
or die(mysql_error());
mysql_query("INSERT INTO exemplu
(Nume, Prenume, Localitate, Varsta) VALUES('Bejan',’Paul','Roma','45' ) ")
or die(mysql_error());
echo "Informatiile au fost inserate!";
?>
|
Sa explicam functiile:
-mysql_query() –face trimitere catre baza de date selectata anterior.
-INSERT INTO Nume_Tabel : instructiunea de a insera informatii in tabelul “Nume_Tabel” (in cazul nostru a fost “exemplu”);
-Dupa INSERT TO exemplu , se scriu coloanele tabelului intre paranteze: (Nume, Prenume, Localitate, Varsta).
-VALUES ( 'Val 1','‘Val 2','Val 3')- reprezinta valorile care sunt adaugate in dreptul coloanei scrisa intre parantezele anterioare.
-or die (mysql_error()) – aceasta instructiune, este executata atunci cand intervine o eroare in desfasurarea codului MySql, si afiseaza un text, in care explica in ce consta eroarea respectiva. Exemple de erori: inexistenta anumitului tabel, inexistenta anumitei coloane, etc.
Asadar, tabelul “exemplu” arata acum, in felul asta:
| Cod: |
ID | Nume | Prenume | Localitate | Varsta
1 | Marcu | Florian | Bucuresti | 18
2 | Bejan | Paul | Roma | 45
|
******************************** _________________ http://marcuflorian.uv.ro |
|
| Sus |
|
 |
Florian Administrator


Data inscrierii: 10/Sep/2007 Mesaje: 211 Localitate: Virtuale-Zone
|
Trimis: 14/10/2007 11:08 Titlul subiectului: |
|
|
************LECTIA A VI-A*************
In timpul acesta, avand informatie in tabelul “exemplu”, trebuie sa stim sa o afisam. De exemplu, acum avem doi utilizatori inregistrati. Ne trebuie astfel, un script pt a afisa lista de useri. Practic, noi trebuie sa afisam tabelul “exemplu”. Vom trece direct la cod:
| Cod: |
<?php
/ /Ne conectam la baza de date
$hostname="sql1.phpnet.us"; //numele serverului
$username ="pn_1100251"; //usernameul
$password="ParolaMea";
$database=" pn_1100251_utilizatori ";
$conexiune=mysql_connect($hostname,$username,$password)
or die ("Nu ma pot conecta la server");
$bazadate=mysql_select_db($database,$conexiune)
or die ("Nu gasesc baza de date");
//Acesam tabelul “exemplu”:
$result = mysql_query("SELECT * FROM exemplu")
or die(mysql_error());
// Accesam fiecare rand(linie) din tabelul “exemplu” :
while($row = mysql_fetch_array( $result ))
{
/*Afisam toate informatiile aflate pe randul $row! Atentie! Acestea sunt stocate asemenea unui vector, avand ca indici de pozitie numele coloanelor tabelului! */
echo $row['id']." ";
echo $row['Nume'] ." ";
echo $row['Prenume'] ." ";
echo $row['Localitate'] ." ";
echo $row['Varsta'] ." ";
echo "<br> "
}
?>
|
Acest cod va afisa:
| Cod: |
1 Marcu Florian Bucuresti 18
2 Bejan Paul Roma 45
|
******************************** _________________ http://marcuflorian.uv.ro |
|
| Sus |
|
 |
|
|
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, 2002 phpBB Group Fa-ti si tu propriul forum GRATUIT, pe www.myforum.ro
|