125 Kezdőlap - Webszerkesztés - MySQL - Megyéink
ujdomainek.hu

Megyéink

és a régiók

Mintapélda

Adott az alábbi adatbázistábla Magyarország megyéivel és azok adataival:
	mid		N 11	   azonosító
	mnev		C 22	   a megye neve
	mnep		N  7	   a megye népessége [fő]
	mter		N  5	   a megye területe  [km2]
	szekhely	C 14	   a megyeszékhely neve
	sznep		N  7	   a székhely népessége [fő]
	szter		F  5,2	   a székhely területe  [km2]
	regio		C 20	   a megye régiója az országon belül
Az adatbázistáblát létrehozó SQL utasításssor az alábbi linkről tölthető le: Hozzunk létre phpMyAdmin felületünkön foldrajz néven adatbázist (ha még nem létezik), és helyezzük el benne az adatbázistáblát. Listázzuk ki a táblázatból a megyék neve mellett a területüket, népességüket, illetve számított értékként a népsűrűségüket az alábbiak szerint!
Megye terület
km2
népesség
ezer fő
népsűrűség
fő/km2
Bács-Kiskun 8445 504 60
Baranya 4430 361 81
Békés 5631 334 59
Borsod-Abaúj-Zemplén 7247 642 89
Budapest 525 1752 3338
Csongrád 4263 399 94
Fejér 4359 418 96
Győr-Moson-Sopron 4208 467 111
Hajdú-Bihar 6211 528 85
Heves 3637 295 81
Jász-Nagykun-Szolnok 5582 370 66
Komárom-Esztergom 2265 299 132
Nógrád 2546 189 74
Pest 6393 1279 200
Somogy 6066 301 50
Szabolcs-Szatmár-Bereg 5936 553 93
Tolna 3703 217 59
Vas 3336 254 76
Veszprém 4463 341 76
Zala 3784 269 71
Összesen: 93030 9773 105
E megoldás forráskódja az alábbi képre kattintva tekinthető meg.
A megoldás legfontosabb elemeit azok a PHP függvények jelentik, melyek az adatbázishozzáférést, és -kezelést valósítják meg. Ezek a következők: Értelemszerűen a mysqli_connect(), illetve a mysqli_close() az adatbázishoz kapcsolódást, valamint az arról való lekapcsolódást valósítják meg.

A mysqli_query() teszi lehetővé, hogy a PHP programunkban MySQL utasítást (kérést) tudjunk elhelyezni. Ennek az eredménye - helyes MySQL utasítás esetén - egy táblázat, mellyel a PHP kiíró utasítások nem sokat tudnak kezdeni. Ezért van szükség a mysqli_fetch_array() függvényre, mely a táblázat egy sorát tömbbe olvassa át. A tömb elemei a táblázat egyes oszlopaiból jönnek létre.

Abban az esetben, ha a lekérdezésünk több sornyi adatot adott vissza, akkor a tömbbe olvasást jellemzően egy while() ciklus részeként szükséges többször végrehajtani - hiszen a mysqli_fetch_array() egyszerre valóban csak egy rekordot olvas ki a táblázatból, az éppen soron következőt.

Ha a lekérdezésünk eredménye csupán egyetlen sornyi adatból áll - például mert összesített adatokat kérdeztünk le -, akkor nincs szükség ciklusszervező utasításra, hanem a mysqli_query() függvény eredménye egy az egyben lehet a mysqli_fetch_array() paramétere.

Ahogyan a fenti mintapélda forráskódjából látható, a különféle számítások - esetünkben a népsűrűség meghatározása - MySQL és PHP nyelven is elvégezhetőek. Jelen példában az egyes megyék népsűrűségének számítását MySQL-lel oldottuk meg, míg az ország átlagos népsűrűségét PHP kifejezéssel kalkuláltuk.

Feladat

A fenti minta átalakításával, kiegészítésével valósítsa meg az alábbi táblázatot. Benne tüntesse fel a megyék megyeszékhelyeit, a megyék, illetve a székhelyek népességét, és adja meg, hogy az adott megyében az emberek hány százaléka lakik a megyeszékhelyen.
Megye
 
Népesség
ezer fő
Székhely
 
Népesség
ezer fő
arány
 
Bács-Kiskun 504 Kecskemét 111 22%
Baranya 361 Pécs 143 40%
Békés 334 Békéscsaba 59 18%
Borsod-Abaúj-Zemplén 642 Miskolc 155 24%
Budapest 1752 Budapest 1752 100%
Csongrád 399 Szeged 161 40%
Fejér 418 Székesfehérvár 97 23%
Győr-Moson-Sopron 467 Győr 132 28%
Hajdú-Bihar 528 Debrecen 201 38%
Heves 295 Eger 53 18%
Jász-Nagykun-Szolnok 370 Szolnok 71 19%
Komárom-Esztergom 299 Tatabánya 66 22%
Nógrád 189 Salgótarján 34 18%
Pest 1279 Budapest 0 0%
Somogy 301 Kaposvár 61 20%
Szabolcs-Szatmár-Bereg 553 Nyíregyháza 117 21%
Tolna 217 Szekszárd 32 15%
Vas 254 Szombathely 78 31%
Veszprém 341 Veszprém 60 18%
Zala 269 Zalaegerszeg 57 21%
Összesen: 9773 3440 35%
Észszerűsítse a táblázatot, és módosítsa a sorrendet a következők szerint: A változtatásokat az adatbázis változatlanul hagyása mellett végezze el, kizárólag az adatokat megjelenítő program korrigálásával!

További feladat

A adatbázistábla regio nevű oszlopát felhasználva PHP program segítségével jelenítse meg böngészőben az alábbi tartalmat. A táblázatban régiónként összegezze a lakosságot, illetve ezt megelőzően irassa ki, mely megyék tartoznak az adott régióba.


Régió
 
Megyéi
 
Népessége
ezer fő
Közép-Magyarország Budapest
Pest
3031
Észak-Alföld Hajdú-Bihar
Jász-Nagykun-Szolnok
Szabolcs-Szatmár-Bereg
1451
Dél-Alföld Bács-Kiskun
Békés
Csongrád
1237
Észak-Magyarország Borsod-Abaúj-Zemplén
Heves
Nógrád
1126
Közép-Dunántúl Fejér
Komárom-Esztergom
Veszprém
1058
Nyugat-Dunántúl Győr-Moson-Sopron
Vas
Zala
989
Dél-Dunántúl Baranya
Somogy
Tolna
880
Összesen: 9773

Tipp a megoldáshoz

Ahhoz, hogy a középső oszlopban meg tudjuk jeleníteni a régióhoz tartozó megyéket, célszerű a régiók listázását megvalósító cikluson belül elhelyezni egy erre vonatkozó új lekérdezést, illetve az új lekérdezést feldolgozó (belső) ciklust is.




2020-08-04 13:46:20 Admin Köszönöm, ha Ön lesz az első, aki megírja ide véleményét, észrevételét, kérdését ezzel a lappal kapcsolatban.




Új hozzászólás:
E-mail cím:


Erre a címre küldjük ki a hozzászólás jóvá- hagyásához szükséges linket. Az e-mail címet sehol nem tesszük közzé.

Név:


Ez a név fog megjelenni az Ön hozzászólásai mellett.

Mennyi tizenöt + öt?
Számjegyekkel írja be!



Ez a robotok beírása elleni védelem miatt szükséges ellenőrzés.


© infojegyzet.hu, 2020. április