Curs Php-mysql

- Executare siruri cu instructiuni SQL

Laravel suporta in prezent urmatoarele 4 baze de date: MySQL, Postgres, SQLite, si SQL Server.
- In acest tutorial voi folosi Laravel cu baza de date MySQL, care este, de asemenea, Baza de date implicita definita la instalarea framework-ului Laravel.

Conectare la Baza de Date MySQL

Mai intai, creati o Baza de Date in MySQL. Pentru acest tutorial am creat cu PhpMyAdmin o baza de date numita "lrvt".
Apoi, deschideti fisierul .env (in directorul unde aveti Laravel instalat) si adaugati datele voastre pentru conectare la MySQL.
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=lrvt
DB_USERNAME=root
DB_PASSWORD=null
- Este bine sa aveti aceleasi date adaugate in fisierul config/database.php, la array-ul "mysql" in "connections".
'mysql'=>[
  'driver'=> 'mysql',
  'host'=> env('DB_HOST', '127.0.0.1'),
  'port'=> env('DB_PORT', '3306'),
  'database'=> env('DB_DATABASE', 'lrvt'),
  'username'=> env('DB_USERNAME', 'root'),
  'password'=> env('DB_PASSWORD', ''),
  //...
],
Metoda env() obtine valoare unei variabile de mediu sau returneaza o valoare implicita (adaugata la al doilea argument)
Fisierul config/database.php este de fapt fisierul de configurare care e folosit. Doar ca foloseste valori din env. Asta va permite sa nu fie nevoie sa modificati fisierele de configurare cand aveti un proiect pe servere diferite. Puteti avea doar un fisier .env diferit.

Daca vreti sa testati conexiunea la baza de date MySQL, adaugati acest cod in routes/web.php :
Route::get('test-conn',function(){
  // Test database connection
  try {
    DB::connection()->getPdo();
    if(DB::connection()->getDatabaseName()){
      return 'Successfully connected to the DB: '. DB::connection()->getDatabaseName();
    }
  } catch (\Exception $e){
    return 'Could not connect to the database. Please check your configuration.';
  }
});
- Apoi, accesati acest URL:
//localhost:8000/test-conn

Executare siruri cu instructiuni SQL

Dupa ce ati configurat conexiunea la baza de date, puteti executa interogari SQL folosind Clasa DB.
Clasa DB furnizeaza metode pentru fiecare tip de interogare: select, update, insert, delete si statement.

Metoda statement()

Metoda DB::statement() este folosita pentru interogari care nu returneaza nici o valoare, precum: "CREATE TABLE" si "DROP TABLE".
DB::statement('drop table users');

Metoda insert()

Metoda DB::insert() este folosita pentru a executa interogarea INSERT. Primul argument e sirul SQL INSERT, al doilea argument e un array-ul cu valori pentru inlocuitorii "?" folositi in sirul SQL. Returneaza True sau False.
DB::insert('insert into users (id, name) values (?, ?)', [1, 'MarPlo']);
- Sau cu inlocuitori ":nume":
DB::insert('insert into users (id, name) values (:id, :name)', ['id'=>1, 'name'=>'MarPlo']);
Pentru a obtine ultimul id introdus intr-o coload 'id' AUTO_INCREMENT cand o interogare Insert este efectuata cu metoda DB::insert(), folositi metoda DB::getPdo()->lastInsertId() dupa ce afirmatia insert este executata.
$sql ='insert into users (id, name) values (:id, :name)';
DB::insert($sql, ['id'=>1, 'name'=>'MarPlo']);
$last_id = DB::getPdo()->lastInsertId();

Interogare Select

Metoda DB::select() returneaza un array cu randurile rezultate.
$results = DB::select('select * from users where id = ?', [1]);
- Sau cu inlocuitori ":nume":
$results = DB::select('select * from users where id = :id', ['id'=>1]);
Randurile returnate pot fi derulate cu o instructiune foreach():
$sql ='select * from users where id > :id';
$res = DB::select($sql, ['id'=>2]);
foreach($res as $row){
  //$row is an object with the columns name as properties
  echo $row->column_name;
}

Metoda update()

Metoda DB::update() este folosita pentru a efectua o interogare UPDATE. Returneaza numarul de randuri afectate.
$nr_afr = DB::update('update users set votes = 100 where name = ?', ['John']);
- Sau cu inlocuitori ":nume":
$nr_afr = DB::update('update users set votes = 100 where name = :name', ['name'=>'John']);

Metoda delete()

Metoda DB::delete() este folosita pentru a efectua o interogare DELETE. Returneaza numarul de randuri afectate.
$nr_afr = DB::delete('delete from users where id = ?', [2]);
- Sau cu inlocuitori ":nume":
$nr_afr = DB::delete('delete from users where id = :id', ['id'=>2]);


- Documentatie: Laravel - Database: Getting Started

Un Test simplu in fiecare zi

HTML
CSS
JavaScript
PHP-MySQL
Engleza
Spaniola
Clic pe tag-ul HTML care afiseaza o linie orizontala.
<br> <em> <hr>
Continut ...
<hr />
Alt continut sub linie ...
Care proprietate CSS defineste culoarea textului?
font-style font-variant color
h2 {
  color: #cbdafb;
}
Clic pe functia care cauta daca un anume caracter sau text e intr-un sir.
indexOf() toString() split()
var str = "Web courses - http://CoursesWeb.net/";
if(str.indexOf("http://") == -1) alert("http:// nu e in sir");
else alert("http:// e in sir");
Care e functia ce imparte un sir in parti de siruri intr-un array, pe baza unui separator?
array_merge() explode() implode()
$str = "mar,banana,pepene,para";
$arr = explode(",", $str);
var_export($arr);      // array (0=>"mar", 1=>"banana", 2=>"pepene", 3=>"para")
Indicati asocierea corecta: "luna-anotimp".
April - Autumn October - Spring July - Summer
July is a beautiful summer month.
- Iulie este o frumoasa luna de vara.
Indicati asocierea corecta: "luna-anotimp".
Octubre - Primavera Julio - Verano Abril - Otoño
Julio es un hermoso mes de verano.
- Iulie este o frumoasa luna de vara.
Lucru cu Baza de Date MySQL in Laravel

Last accessed pages

  1. JavaScript HTML DOM - Obiectul document (2228)
  2. Prefixele dis, mis, un - Test engleza (6087)
  3. Verbe ca si Gustar (2059)
  4. Lista evenimente JavaScript (1286)
  5. Numere cardinale 31-1000 (3808)

Popular pages this month

  1. Cursuri si Tutoriale: Engleza, Spaniola, HTML, CSS, Php-Mysql, JavaScript, Ajax (162)
  2. Gramatica limbii spaniole. Indrumator si prezentare generala (102)
  3. Limba spaniola curs online incepatori si avansati (65)
  4. Teste spaniola - Tests y ejercicios de Español - Gramática (65)
  5. Curs de Miracole (51)