Porta shqipe   |  Mësime për PHP

Lidhja me skedarin me të dhëna

Vërejtje: Ky mësim është identik me mësimin për gjuhën ASP. Vetëm sintaksa e PHP-së është ndryshe këtu.

SQARIM PËR EMRIN: Skedari i të dhënave quhet në gjuhën shqipe me emra të ndryshëm tani, për shembull databezi, databejzi, databazi, databasi dhe disa emra të tjerë të pakuptimtë shqip. Ne e quajmë këtë skedar tek Porta në gjuhën shqipe: ose "skedar/skedë me të dhëna" ose "bazë e të dhënave".

Në këtë mësim tregohet lidhja me skedarin e të dhënave në formatin MySQL. Në këtë skedar vendosen të dhënat në tabelë. Kjo tabelë ka fusha me emra. Këto të dhëna tregohen në faqe, sipas kërkesës sonë.

Tabela e këtij mësimi ka tre fusha me këta emra:

  1. numri_id
  2. emri
  3. mbiemri

Kështu duket kjo tabelë vizualisht:

numri_id emri mbiemri
1 Drenusha Gashi
2 Bardh Bytyqi
3 Edon Krasniqi
4 Drenush Kelmendi
5 Edona Morina
6 Bardha Berisha

Në MySQL krijohet tabela me kod kështu:

CREATE TABLE IF NOT EXISTS `anëtarët` (
`numri_id` smallint(6) NOT NULL auto_increment,
`emri` varchar(250) NOT NULL default '',
`mbiemri` varchar(250) NOT NULL default '',
PRIMARY KEY (`numri_id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;


kliko këtu për zmadhim

Pas krijimit i fusim të dhënat në tabelë kështu:

INSERT INTO `anëtarët` (`numri_id`, `emri`, `mbiemri`) VALUES
(1, 'Drenusha', 'Gashi'),
(2, 'Bardha', 'Bytyqi'),
(3, 'Edon', 'Krasniqi'),
(4, 'Drenush', 'Kelmendi'),
(5, 'Edona', 'Morina'),
(6, 'Bardh', 'Berisha');

Dhe kështu e bëjmë ne lidhjen me bazën tonë të dhënave në MySQL (lexo sqarimin në fund)

emrat.php

<?php
$furnizuesi = "serveri.mysql.portashqipe.com";
$përdoruesi = "studenti";
$fjalëkalimi = "dituria";
$skedari = "mesime_nga_porta";
$tabela = "anëtarët";

mysql_connect ($furnizuesi, $përdoruesi, $fjalëkalimi);
$rezultati = mysql_db_query ($skedari, "select * from $tabela");

while ($rendi = mysql_fetch_assoc ($rezultati))
{
echo $rendi ["numri_id"];
echo " ";
echo $rendi ["emri"];
echo " ";
echo $rendi ["mbiemri"];
echo "<br>";
}

mysql_free_result ($rezultati);

?>

VËREJTJE PËR FILLESTARË: Të gjitha të dhënat për lidhje me server në këtë mësim nuk ekzitstojnë. Ato janë të trilluara. Ju duhet të përdorni të dhënat e serverit tuaj dhe me emrin tuaj të përdoruesit.

Kjo kërkesë i tregon kështu të dhënat në faqe:

emrat.php
1 Drenusha Gashi
2 Bardha Bytyqi
3 Edon Krasniqi
4 Drenush Kelmendi
5 Edona Morina
6 Bardh Berisha
Kodi Sqarimi
$... emri i ndryshores, funksion i cili merr përsipër atë që është pas barazimit
mysql_connect funksion për marrjen e lidhjes me skedarin me të dhëna në MySQL
$rezultati emri i ndryshores sonë për tregimin e rezultatit
select * from $tabela zgjedh të gjitha (shenja *) nga tabela (shiko emrin e tabelës tek kjo ndryshore)
mysql_db_query funksion për kërkesën e tregimit të të dhënave nga skedari
while funksion i cili fillon tregimin e të gjitha fushave nga skedari, me përsëritje
mysql_fetch_assoc funksion i cili fillon tregimin prej fushës së parë e më tutje
$rendi emër i funksionit i krijuar nga ne i cili e tregon rezultatin e funksionit të kërkesës
echo do të thotë trego në faqe
mysql_free_result liro kujtesën e serverit, nuk ka nevojë që të bëj më ai asgjë tani

Funksioni while i zgjedh të dhënat duke përsëritur të njëjtin veprim deri në fund të tabelës. Me funksionin echo e tregojmë fushën me emrin në mes thonjëzave.

Në vend që të rendisim rreshtat veç e veç, mund të përdorim pikën për lidhje të pjesëve. Për shembull kështu:

echo $rendi ["numri_id"] . " " . $rendi ["emri"] . " " . $rendi ["mbiemri"] . "<br>" ;

Përparësitë e bazës së të dhënave në krahasim me të dhënat statike

Përparësi e të dhënava nga baza është se tani kemi mundësi që të kërkojmë tregimin e shënimeve sipas dëshirës sonë dhe jo ashtu sikur që janë vendosur në tabelë. Për shembull nëse dëshirojmë që renditja të bëhet sipas emrit atëherë e bëjmë këtë me funksionin order by. Pasi që përmbajtja është vetëm tekst mund të tregojmë miliona të dhëna brenda një sekonde nga serveri ynë.

$rezultati = mysql_db_query ($skedari, "SELECT * FROM $tabela ORDER BY emri");

me_renditje_sipas_emrit.php
6 Bardh Berisha
2 Bardha Bytyqi
4 Drenush Kelmendi
1 Drenusha Gashi
3 Edon Krasniqi
5 Edona Morina

Përpos tregimit të të dhënave kështu kemi mundësi që të kërkojmë vetëm të dhënat në të cilat jemi të interesuar.

 

© Porta Shqipe - 2010 - Tė gjitha tė drejtat e rezervuara

Tabela e krijuar me MyAdmin

MyAdmin mundėson marrjen e lidhjes me bazėn e tė dhėnave nė rrjet. Ky program pėrdoret kryesisht edhe nga furnizuesit e rrjetit tė internetit.