Distractia pe primul loc

Deja e prea multa liniste.
De duminica, de cand a plecat balciul, orasul e pustiu. Nu ca mi-ar fi placut balamucul monstru provocat in fiecare seara pe strazile micului nostru oras.
Si balciul asta, nimic bun de pe urma lui. Strazile pline cu peturi aruncate la nimereala printre picioarele locatarilor, cosurile de gunoi astupate si ingropate in mizerie, iar deasupra orasului, un nor de praf inrosea tot cerul. Dar pentru distractie, omul da la o parte totul. Nu conteaza daca cei din jur se imbolnavesc, sau ca atat imaginea orasului, cat si imaginea noastra scade in ochii celorlalti.
Trei saptamani de distractie si-au lasat amprenta. Acum ne bucuram de liniste.

Tutorial phpMyAdmin

Incepem cu inceputul: mysql este cea mai populara baza de date open source din lume .
Una din cele mai cunoscute de manipulare a bazelor de date mysql este phpmyadmin.
Bun, sa trecem la actiune:
Pasul 1. Descarcam de pe internet PhpMyAdmin
Dezarhivam, apoi uploadam pe server folderul proaspat arhivat.

Te conectezi din nou la ftp si intrii in folderul phpmyadmin…creezi un fisier nou numit config.inc.php In acest fisier punem urmatoarele linii:
$cfg[‘blowfish_secret’] = ‘valoare_pe_care_o_doriti’;
$i = 0;
/*
* First server
*/
$i++;
$cfg[‘Servers’][$i][‘auth_type’] = ‘config’;
$cfg[‘Servers’][$i][‘host’] = ‘adresa_host’; /*eu cand mi-am luat contul de host am primit un email de la firma in care aveam si un camp hosting server-> acela este adresa_host*/
$cfg[‘Servers’][$i][‘connect_type’] = ‘tcp’;
$cfg[‘Servers’][$i][‘compress’] = false;
$cfg[‘Servers’][$i][‘extension’] = ‘mysql’;
$cfg[‘Servers’][$i][‘user’] = ‘userul_primit_pe_email’;
$cfg[‘Servers’][$i][‘password’] = ‘parola_idem’;
$cfg[‘Servers’][$i][‘pmadb’] = ‘baza_de_date_de_pe_email’;
?>
Il salvam si apoi intram pa adresa web: http://www.nume_site.tld/phpMyAdmin-2.11.9-all-languages/
In partea stanga avem un meniu cu bazele/baza de date mysql.
baza de date phpMyAdmin

baza de date phpMyAdmin

Noi vom da click pe baza de date ce are in paranteza cifra 0. Vom avea in fata doua campuri pe care trebuie sa le completam.
( Exemplele ce vor urma sunt pentru crearea unei tabele pentru autentificare pe un site. Mai multe detalii le veti gasi in continuare).
In campul nume vom scrie autentificare, iar in dreptul la numar de campuri vom scrie cifra 2. Apoi, apasam pe butonul Executa.
creare tabela in phpMyAdmin

creare tabela in phpMyAdmin

Formularul nou aparut trebuie completat ca in imaginea de mai jos si apoi, trebuie apasat butonul Salveaza.
completare campuri phpMyAdmin

completare campuri phpMyAdmin

Daca totul a mers conform planului, trebuie sa aveti pe monitor o imagine asemenea acesteia. Bun…acum avem o tabela numita autentificare cu campurile user si parola.
campuri in phpMyAdmin

campuri in phpMyAdmin

Urmatoare intrebare ce se pune este: Cum adaugam valori acestor campuri ?
Facem un fisier numit adauga.php. In fisier punem urmatoarele linii:
require_once(“configurare.php”);
$cerere=”INSERT INTO autentificare(user,parola) VALUES(‘user_ales’,’parola_aleasa’)”;
$adauga=mysql_query($cerere);
if (!$adauga) {
echo “Nu s-a putut face cererea catre baza de date”;
}
else {
echo “Datele au fost adaugate in baza de date”;
}
?>
Sa explic ce am facut mai sus:
sunt tag-uri ce marcheaza inceputul unui script php.
require_once(“configurare.php”);
Este incarcat fisierul configurare.php. Cu alte cuvinte, ni se va stabili conexiunea cu baza de date inca de la inceputul scriptului.
$cerere=”INSERT INTO autentificare(user,parola) VALUES(‘user_ales’,’parola_aleasa’)”;
semnul $ este semnul de inceput al fiecarei variabile declarate in php.
“INSERT INTO autentificare(user,parola) VALUES(‘user_ales’,’parola_aleasa’)”;
Spunem bazei de date: iintrodu in tabela autentificare in campul (user,parola) valorile (’user’,’parola’).
mysql_query($cerere);
Spunem scriptului: executa tot ce contine variabila $cerere.
Apoi, urmeaza o structura de control, un if-else, care suna cam asa:
if (!$adauga) {
echo “Nu s-a putut face cererea catre baza de date”;
}
else {
echo “Datele au fost adaugate in baza de date”;
} Iar varianta tradusa:
daca(cererea nu se poate efectua in baza de date) { arata mesajul “Nu s-a putut face cererea …”; }
daca(cererea s-a putut efectua) { arata mesajul };

Am omis sa spunem ce contine fisierul configurare.php.
El va contine urmatoarele linii:

$adresa=”adresa_host”;
$utilizator=”utilizator”;
$parola=”parola”;
$numebazedate=”numele_bazei_de_date”;
$conexiune= mysql_connect($adresa,$utilizator,$parola) or die(“Nu ma pot conecta”);
mysql_select_db($numebazedate,$conexiune) or die(“Nu exista baza de date”);

Intram pe http://nume_site.tld/adauga.php
Daca mesajul aparut pe ecran va fi unul de confirmare, atunci campurile user si parola au fost completate cu valorile impuse de dumneavoastra, in caz contrar va rog frumos sa postati eroare aici pentru a incerca sa o depanam.

ok, acum avem in baza de date un user si o parola. Intrebarea care se naste este: cum facem sa ne autentificam ?
In primul rand, trebuie verificate datele daca se aseamana cu cele din baza de date si apoi pe baza rezultatului sa facem o sesiune care sa certifice ca noi suntem cei care stim userul si parola.

Facem un fisier numit autentificare.php care va avea urmatoarele linii:
require_once(”config.php”);
if(!isset($_GET[‘actiune’])) $_GET[‘actiune’]=”;
<form method=’post’ action=’autentificare.php?actiune=valideaza’>
<input type=’text’ name=’user’>
<input type=’password’ name=’parola’>
<input type=’submit’ value=’Autentifica-te !’>
</form>”;
if($_GET[‘actiune’]====’valideaza’) {
$sql=”SELECT * FROM autentificare WHERE nume=’$nume’ AND parola=’$parola’”;
$rezultat=mysql_query($sql);
if(mysql_num_rows($rezultat) == 1) {
$_SESSION[‘logat’]=’Ok’;
echo “Sunteti logat !”;
}

else {
echo”Nu v-ati autentificat!”;
}
}
Modul de functionare al fisierului de mai sus:
Pasul 1: Ne conectam la baza de date.
Pasul 2: Verificam daca a fost initializata variabila $_GET[‘actiune’], in caz contrar noi o vom initializa.
Pasul 3:Ilustram formularul ce contine campuri ce trebuiesc completate cu userul si parola existente in baza de date.
Pasul 4: Noi in momentul in care apasam pe butonul Autentifica-te ! vom fi redirectionati catre pagina autentificare.php?actiune=validare(fiindca asa i-am ordonat form-ului html[action=’autentificare.php?actiune=valideaza’]). Cu if($_GET[‘actiune’]===’valideaza’) verificam daca suntem cu adevarat redirectati catre autentificare.php?actiune=validare si daca se confirma, se face cererea in baza de date, iar daca va fi returnat un singur rand ce contin datele introduse atunci initializam sesiunea ce va inmagazina valoarea Ok. Daca nu a fost returnat un singur rand, suntem redirectati catre pagina index.php fara ca sesiunea sa fie valabila.

Acum, ca sa avem (noi cei care stim parola si userul din baza de date) privilegii mai multe fata de ceilalti vizitatori pe site, trebuie sa verificam daca sesiune este pornita in broswerul nostru.
Pentru asta la fiecare pagina in care vrem sa avem privilegii facem o structura de control:
if($_SESSION[‘logat’]===’Ok’) { //arata pagina cu privilegiile;
}
else { //arata pagina ca pentru fiecare vizitator strain
}

Cam atat, sper ca va fi de folos tutorialul.
P.S.: orice critica este binevenita, cu aceasta ocazie mai invat si eu php.