|
SELECT
Creati un nou fisier cu numele extragere_date.php si introduceti in el urmatorul cod:
<?php
require_once('config.php');
// Selectare dare din baza de date
$cerereSQL = 'SELECT * FROM `formular`';
$rezultat = mysql_query($cerereSQL);
while($rand = mysql_fetch_array($rezultat)) {
echo $rand['nume'];
}
?>
Salvati fisierul si apoi accesati in browser http://localhost/tutorial/extragere_date.php
Observati ca daca ati introdus o singura valoare in campul nume din tabela formular, aceasta se va afisa pe pagina, daca sunt mai multe intrari ele se vor afisa una in continuarea celeilalte.
Pentru a le afisa una sub alta modificati linia echo $rand['nume']; in echo $rand['nume'].’<br>‘;
Si acum sa analizam codul PHP.
Prima linie din script trebuie sa fie functia require_once, functie care include, o singura data, in pagina noastra extragere_date.php pagina config.php; adica datele din config.php vor fi transmise in pagina noastra.
$cerereSQL = 'SELECT * FROM `formular`'; - In aceasta linie avem variabila $cerereSQL cu valoarea cererii SQL pentru a extrage datele din tabela formular. Ea se interpreteaza cam asa: SELECTEAZA tot DIN formular.
$rezultat = mysql_query($cerereSQL); - In aceasta linie avem variabila $rezultat cu valoarea functiei mysql_query, functie care realizeaza deschiderea conexiunii.
while($rand = mysql_fetch_array($rezultat)) {
echo $rand['nume'];
}
In aceasta parte de cod observam bucla while, bucla care am invatat cum se foloseste la inceputul tutorialului nostru.
echo $rand['nume']; - In acest echo apar valorile coloanei nume din tabelul formular.

In interiorul acestei bucle putem afisa si prenumele, si varsta, modificand constructia echo, si anume: echo $rand['nume'].' '.$rand['prenume'].' '.$rand['varsta'].' <br>';
Salvati si apoi testati in browser.

In cazul meu, am 2 intrari in tabela formular si anume:

In cererea noastra SQL am selectat * adica tot din tabela formular, insa se poate selecta numai un camp sau
mai multe.. si anume:
$cerereSQL = 'SELECT `nume,prenume` FROM `formular`';
Sintaxa SELECT este mult mai completa decat am prezentat-o pana acum si anume:
SELECT
[ALL | DISTINCT | DISTINCTROW ]
[HIGH_PRIORITY]
[STRAIGHT_JOIN]
[SQL_SMALL_RESULT] [SQL_BIG_RESULT] [SQL_BUFFER_RESULT]
[SQL_CACHE | SQL_NO_CACHE] [SQL_CALC_FOUND_ROWS]
select_expr, ...
[INTO OUTFILE 'file_name' export_options
| INTO DUMPFILE 'file_name']
[FROM table_references
[WHERE where_definition]
[GROUP BY {col_name | expr | position}
[ASC | DESC], ... [WITH ROLLUP]]
[HAVING where_definition]
[ORDER BY {col_name | expr | position}
[ASC | DESC] , ...]
[LIMIT {[offset,] row_count | row_count OFFSET offset}]
[PROCEDURE procedure_name(argument_list)]
[FOR UPDATE | LOCK IN SHARE MODE]
Sa luam urmatorul exemplu, pentru a selecta tot din tabela formular, si sa ii punem o conditie WHERE.
<?php
require_once('config.php');
// Selectare dare din baza de date
$cerereSQL = 'SELECT * FROM formular WHERE nume="orice" ';
$rezultat = mysql_query($cerereSQL);
while($rand = mysql_fetch_array($rezultat)) {
echo $rand['nume'].' '.$rand['prenume'].' '.$rand['varsta'].' <br>';
}
?>
Observati ca avem conditia WHERE nume="orice", iar rezultatul o sa fie numai prima linie din tabela formular, deoarece primul nume de acolo este egal cu numele dat de noi in conditie.
|