PHP MySQL, Java JDBC MySQL. Adatbázisok az iskolában 2012 Dr. Balázs Péter Palatinus Endre és Erdőhelyi Balázs diái alapján



Hasonló dokumentumok
PHP-MySQL. Adatbázisok gyakorlat

PHP. Adatbázisok gyakorlat

SZÁMÍTÓGÉPES ADATBÁZIS-KEZELÉS. A MySQL adatbáziskezelő PHP folytatás JDBC, ODBC

SZÁMÍTÓGÉPES ADATBÁZIS-KEZELÉS. A MySQL adatbáziskezelő A PHP programozási nyelv JDBC, ODBC

WEBFEJLESZTÉS 2. ADATBÁZIS-KEZELÉS, OSZTÁLYOK

PHP gyorstalpaló, avagy a Hello World-től az űrlapellenőrzésig

PHP alapjai, bevezetés. Vincze Dávid Miskolci Egyetem, IIT

PHP. Telepítése: Indítás/újraindítás/leállítás: Beállítások: A PHP nyelv

Dr. Pál László, Sapientia EMTE, Csíkszereda WEB PROGRAMOZÁS 4.ELŐADÁS. Adatbázis alapú alkalmazások készítése PHP-ben

Web programozás I. 4. előadás

Programozás és adatbázis kezelés PHP ben

Extrémen brutál, gyors talpaló PHP nyelvhez (database). v2.1

Webtárhely létrehozása a helyen. Lépések Teendő 1. Böngészőbe beírni: 2. Jobb oldalon regisztrálni (tárhelyigénylés).

Adatbázis Rendszerek II. 1. SQL programozási felületek 39/1B IT MAN

A JavaScript főbb tulajdonságai

A gyakorlat során MySQL adatbázis szerver és a böngészőben futó phpmyadmin használata javasolt. A gyakorlat során a következőket fogjuk gyakorolni:

Adatbázisok gyakorlat

A PHP nyelv alapjai. Web-Sky Consulting Kft Tóth Imre 2009

WEB PROGRAMOZÁS 3.ELŐADÁS. Űrlapok

1. Alapok. #!/bin/bash

Internet programozása. 1. előadás

Természetesen készíts egy csempe nevű könyvtárat és ide mentsd az index.html állományt.

Egyetemi könyvtári nyilvántartó rendszer

S z á m í t ó g é p e s a l a p i s m e r e t e k

WEBFEJLESZTÉS 2. MUNKAMENET-KEZELÉS, HITELESÍTÉS

InFo-Tech emelt díjas SMS szolgáltatás. kommunikációs protokollja. Ver.: 2.1

Webprogramozás szakkör

Az alábbi kód egy JSON objektumot definiál, amiből az adtokat JavaScript segítségével a weboldal tartalmába ágyazzuk.

Készítette: Gál Tamás. A tananyag programozott változata itt érhető el: Webfejlesztés

Felhasználói leírás a DimNAV Server segédprogramhoz ( )

OO PDO. Tehát PDO használatával, könnyen átállhatunk egy másik adatbáziskezelőre, anélkül hogy a kódot teljes egészében újraírnánk.

Operációs rendszerek. 11. gyakorlat. AWK - szintaxis, vezérlési szerkezetek UNIVERSITAS SCIENTIARUM SZEGEDIENSIS UNIVERSITY OF SZEGED

Egyetemi könyvtári nyilvántartó rendszer

Szkriptnyelvek. 1. UNIX shell

Adatbázisok kezelése MySQL

MATLAB alapismeretek II.

Internet alkamazások Készítette: Methos L. Müller Készült: 2010

Bevezetés a programozásba I.

Kormányzati Elektronikus Aláíró és Aláírás-ellenőrző Szoftver

Operációs rendszerek. 9. gyakorlat. Reguláris kifejezések - alapok, BASH UNIVERSITAS SCIENTIARUM SZEGEDIENSIS UNIVERSITY OF SZEGED

Adatbáziskezelés php-ben MySQL adatbáziskezelı rendszert használva

Számológép. Bármilyen számítógépen működik, amin található böngésző és Java alkalmazás. Indító képernyő

Javacript alapismeretek

A függvény kód szekvenciáját kapcsos zárójelek közt definiáljuk, a { } -ek közti részt a Bash héj kód blokknak (code block) nevezi.

A Matarka szerszámosládája

Adatbázisok. 8. gyakorlat. SQL: CREATE TABLE, aktualizálás (INSERT, UPDATE, DELETE), SELECT október október 26. Adatbázisok 1 / 17

JavaServer Pages (JSP) (folytatás)

Felhasználói dokumentáció. a TávTagTár programhoz. Készítette: Nyíri Gábor, hdd@nc-studio.com GDF Abakusz regisztrációs kód: GDFAba43

Programozási technikák Pál László. Sapientia EMTE, Csíkszereda, 2009/2010

Memória játék. Felhasználói dokumentáció

Országos Területrendezési Terv térképi mel ékleteinek WMS szolgáltatással történő elérése, Quantum GIS program alkalmazásával Útmutató 2010.

Tömbök kezelése. Példa: Vonalkód ellenőrzőjegyének kiszámítása

Digitális aláíró program telepítése az ERA rendszeren

Adatbázis Rendszerek II. 5. PLSQL Csomagok 16/1B IT MAN

8. gyakorlat Pointerek, dinamikus memóriakezelés

Adatbázis Rendszerek II. 2. Gyakorló környezet

Adatbázis használata PHP-ből

web works hungary Rövid technikai tájékoztató Mars (mars.intelliweb.hu) szerverünkkel kapcsolatban meglévő és új ügyfeleink számára.

Operációs rendszerek. 9. gyakorlat. BASH recap, reguláris kifejezések UNIVERSITAS SCIENTIARUM SZEGEDIENSIS UNIVERSITY OF SZEGED

MS ACCESS 2010 ADATBÁZIS-KEZELÉS ELMÉLET SZE INFORMATIKAI KÉPZÉS 1

Téradatbázisok használata QGIS-ből A DB kezelő modul 2.2 verzió

CIB Internet Bank asztali alkalmazás Hasznos tippek a telepítéshez és a használathoz Windows operációs rendszer esetén

Kinek szól a könyv? A könyv témája A könyv felépítése Mire van szükség a könyv használatához? A könyvben használt jelölések. 1. Mi a programozás?

Apache, MySQL, PHP/Perl NetWare-n

WEBFEJLESZTÉS 2. ADATTÁROLÁS, FÁJLOK

MŰSZAKI DOKUMENTÁCIÓ. Aleph WebOPAC elérhetővé tétele okostelefonon. Eötvös József Főiskola 6500 Baja, Szegedi út 2.

MicroSigner Közvetítő Szerver fejlesztői dokumentáció

Választó lekérdezés létrehozása

M-Files Dokumentumkezelő telepítése

Gyakorló 9. feladat megoldási útmutató

SSL VPN KAPCSOLAT TELEPÍTÉSI ÚTMUTATÓ

EDInet Connector telepítési segédlet

Tudás Reflektor. Copyright 2011; Kodácsy Tamás;

Sakk játék. Feladat: JavaScript segítségével olyan programot kell írni, ami egy sakktáblát szimulál. Kiválasztásra változtatják a helyüket.

Access gyakorlati feladatok lépésről lépésre

II. Mérés SZÉCHENYI ISTVÁN EGYETEM GYŐR TÁVKÖZLÉSI TANSZÉK

Dr. Pál László, Sapientia EMTE, Csíkszereda WEB PROGRAMOZÁS 6.ELŐADÁS. Fájlkezelés PHP-ben

Inczédy György Középiskola, Szakiskola és Kollégium Nyíregyháza, Árok u. 53. TANMENET. Informatika szakmacsoport

WEBSZERKESZTÉS ELMÉLETI VIZSGAKÉRDÉSEK

A GeoEasy telepítése. Tartalomjegyzék. Hardver, szoftver igények. GeoEasy telepítése. GeoEasy V2.05+ Geodéziai Feldolgozó Program

Programozás alapjai gyakorlat. 4. gyakorlat Konstansok, tömbök, stringek

Delphi programozás I.

Informatika terméktervezőknek

Komputeralgebra Rendszerek

R-LINK 2 A szoftver használati útmutatója

Miért jó ez: A Xampp csomag előnyös tulajdonságai: rendkívül jól felszerelt naprakész telepíteni-és frissíteni gyerekjáték.

BarAck.Net. Internetes csomagkezel. Felhasználói kézikönyv V 1.0. (2011. július 20.)

A GeoEasy telepítése. Tartalomjegyzék. Hardver, szoftver igények. GeoEasy telepítése. GeoEasy V2.05 Geodéziai Feldolgozó Program

Számítógépes Hálózatok GY 3-4.hét

Modem telepítése Windows 98 alatt

DAT adatcserefájl AutoCAD MAP DWG mapobject konvertáló program dokumentáció

INFORMATIKAI ALAPISMERETEK

Java programozási nyelv 11. rész Adatbázis-programozás

1. fejezet Bevezetés a web programozásába (Balássy György munkája) Az internet működése... 11

4. Laborgyakorlat. A fájlokról ezeket az adatokat, a fájlrendszer tárolja. Számunkra az 1, 3, 4. oszlopok lesznek az érdekesek.

ADATBÁZIS-KEZELÉS - BEVEZETŐ - Tarcsi Ádám, ade@inf.elte.hu

A gyakorlat során MySQL adatbázis szerver és a böngészőben futó phpmyadmin használata javasolt. A gyakorlat során a következőket fogjuk gyakorolni:

Cikktípusok készítése a Xarayában

Átírás:

PHP MySQL, Java JDBC MySQL Adatbázisok az iskolában 2012 Dr. Balázs Péter Palatinus Endre és Erdőhelyi Balázs diái alapján

Mi a PHP? A PHP (PHP: Hypertext Preprocessor) egy nyílt forráskódú, számítógépes szkriptnyelv, legfőbb felhasználási területe a dinamikus weboldalak készítése. A PHP-kódunk általában egy web-szerveren fut, ahol egy PHP-elemző végrehajtja a kódban lévő PHP nyelvbeli utasításokat, és az eredményt továbbítja a kliens böngészője felé. Tehát ha a PHP-programunk HTML-kódokat írat ki, akkor dinamikus HTML oldalakat generálhatunk

XAMPP A XAMPP elnevezés egy betűszó: X (azaz, platformfüggetlen) Apache HTTP Server webszerver MySQL - adatbázis PHP programozási nyelv Perl programozási nyelv Számunkra elegendő a XAMPP Lite csomag is. http://www.apachefriends.org/en/xampp.html Itt válasszuk ki az oprendszert és a Lite verziót! Pendrive-ra is telepíthető

XAMPP - folytatás Miután feltelepítettük a XAMPP-ot, indítsuk el a xampp control center alkalmazást! Itt kezelhetjük a XAMPP-ot alkotó alkalmazások elindítását és leállítását. Indítsuk el az Apache webszervert (előtte a Skype-ot zárjuk be)! A XAMPP telepítési könyvtárában lévő htdocs mappába kell elhelyeznünk azokat a fájlokat, amelyeket elérhetővé szeretnénk tenni a weboldalunkról. A böngészőbe beírva ezen a címen érhetjük el ezeket a fájlokat: http://localhost/relatív_útvonal

A PHP kód A PHP kód egy.php kiterjesztésű fájlban található. Ebben a <?php és?> tag-ek közé kell elhelyeznünk a PHP-kódunkat. Ami ezen kívül esik, az HTML-kódként értelmeződik. Tetszőlegesen váltogathatják egymást a fájlban a PHP és HTML kódrészletek. Hozzunk létre egy index.php nevű fájlt a példáknak a webszerverünk megfelelő mappájában! (...\XAMPP\htdocs)

Az első programunk A PHP-kódunkat legtöbbször egy HTML oldal törzsébe ágyazzuk. Erre egy példa: <html> <head> <title> Elso programunk </title> </head> <body> <?php echo "Hello World!\n";?> </body> </html>

Változók Változókat a $változónév = kezdőérték; utasítással deklarálhatunk. A változók neve deklaráláskor és használatukkor is a $-jellel kezdődik. A típust nem kell megadnunk, mert azt a PHP automatikusan kitalálja, és mellesleg dinamikus is. <?php $txt="hello World!"; $x=16;?>

Szöveges változók Egyesítés (konkatenáció):. (pont) <?php $txt1="hello World!"; $txt2="what a nice day!"; echo $txt1. " ". $txt2;?> Sztring hossza: strlen("hello world!"); Keresés: strpos("hello world!","world"); Az első egyezés pozícióját, vagy FALSE-ot ad vissza.

Operátorok A C nyelvben megszokott módon. Kivétel az osztás, ami mindig valós osztást jelent, a % pedig egész értéket ad vissza. Az aritmetikai operátoroknál itt is használhatjuk az összevont értékadási formákat: $a += $b; Logikai operátorok: ==,!=, <, <=, >, >=

If, elsif, else <?php $d=date("d"); if ($d=="fri") echo "Kellemes hétvégét!"; elseif ($d=="mon") echo "Hétfőn még a fű se nől!"; else echo "Szép napot!";?> date("d") a hét napjának lekérdezése

Tömbök Kétféleképpen hozhatunk létre tömböket: A tömbelemek felsorolásával az indexek automatikusan hozzárendelődnek 0-tól kezdődően: $autok=array("saab","volvo","bmw", "Toyota"); A tömbelemeket egyenként megadva az indexeket mi magunk határozzuk meg: $autok[0]="saab"; $autok[1]="volvo"; $autok[2]="bmw"; $autok[3]="toyota"; echo $autok[0]. " és ". $autok[1]. " svéd autók.";

Asszociatív tömbök Kulcs-érték párokat tartalmazó adatszerkezet. Az elemek felsorolásával: $eletkorok = array("péter"=>32, "András"=>30, "Tibor"=>34); Az elemek egyenkénti megadásával: $eletkorok['péter'] = "32"; $eletkorok['andrás'] = "30"; $eletkorok['tibor'] = "34"; echo "Péter ". $eletkorok['péter']. " éves.";

Ciklusok $i=1; while ($i<=5) { $i++; } $i=1; do { $i++; } while ($i<=5); for ($i=1; $i<=5; $i++) { echo "i = ". $i. "<br />"; }

A foreach ciklus Tömböket járhatunk be a segítségével. <html> <body> <?php $szamok=array("egy","keet","haar"); foreach ($szamok as $ertek) { echo $ertek. "<br />"; }?> </body> </html>

A foreach ciklus - folytatás Asszociatív tömbök esetén a kulcs-érték párokat is bejárhatjuk vele: <?php $szamok=array("egy"=>1,"keet"=>2, "haar"=>3); foreach ($szamok as $kulcs => $ertek) { echo $kulcs."=".$ertek."<br>"; }?>

Függvények <?php function osszead ($a,$b) { $osszeg=$a+$b; return $osszeg; } echo "2 + 2 az néha ". osszeg(2,3);?> A visszatérési érték típusát nem kell megadni, mert a típusok dinamikusak a PHP-ben. Nem kötelező visszaadni egy értéket, lehet egyszerű eljárást is írni (a return elhagyásával).

Űrlapok kezelése <html> <body> <form action="udvozol.php" method="post"> Név: <input type="text" name= Név" /> <br> Életkor: <input type="text" name= Életkor" /> <br> <input type="submit" value= Küldés /> </form> </body> </html> Az űrlapot kitöltve, és a Küldés gombra kattintva a böngészönk az udvozol.php oldalra ugrik.

Űrlapok kezelése - folytatás Az udvozol.php tartalma a következő: <html> <body> Szia <?php echo $_POST["nev"];?>!<br /> Te <?php echo $_POST["eletkor"];?> éves vagy. </body> </html> A $_GET és a $_POST változókkal kérhetjük le az űrlapokban megadott információkat.

A $_GET és $_POST asszociatív tömbök Ha HTML űrlapunkban, azaz a form elemünkben a method attribútumnak a "get" és a "post" értékeket adhatjuk meg. Ettől függően kell a $_GET vagy a $_POST tömböt használnunk a PHP kódunkban az űrlapban megadott adatok elérésére.

Get vagy post? Ha a get metódussal küldjük az adatokat tovább, akkor azok a URL-ben meg fognak jelenni, és azok nem lehetnek bármilyen hosszúak, míg a POST metódusra ezek nem igazak. http://localhost/proba/udvozol.php?nev =Endre&eletkor=22 ez get esetén lesz így. A get metódussal jelszavakat ne küldjünk! Ha könyvjelzőt szeretnénk létrehozni egy oldalhoz, akkor viszont szükséges a get metódus használata.

Gyakorló feladatok Írjunk egy olyan rekurzív függvényt, amely visszaadja az első n szám összegét! Hozzunk létre egy asszociatív tömböt, amely az általunk felvett kurzusok név-kreditérték párosait tartalmazza, majd számítsuk ki az általunk felvett kreditek számát egy foreach ciklussal! Kérd be egy személy adatait egy űrlapon, majd írassuk azokat ki egy másik PHP-oldalon!

Weboldalak és adatbázisok A dinamikus weboldalak az esetek többségében valamilyen adatbázist használnak az oldalon megjelenített adatok forrásaként. Példák: Webárúház: áruk, ügyfelek, rendelések Fórum: témák, hozzászólások, felhasználók Képgaléria: albumok, képek

MySQL A MySQL a legnépszerűbb nyílt-forráskódú relációs adatbázis-kezelő rendszer. A leggyakrabban a PHP-val együtt használják dinamikus weboldalak készítésére. Míg a PHP-t az Apache webszerver egy beépülő moduljaként használtuk, addig a MySQL egy különálló szerverként fut. Ehhez tudunk konzolos vagy grafikus kliens alkalmazásokkal, vagy a különböző programozási nyelvekben API-kon keresztül kapcsolódni.

A kapcsolat

Szükséges szoftverek Windows alatt a XAMPP (Lite) csomag phpmyadmin: a MySQL könnyebb kezelhetőségét szolgáló, böngészőn keresztül elérhető alkalmazás

Kapcsolódás egy adatbázis kiszolgálóhoz Első lépésként csatlakoznunk kell egy MySQL kiszolgálóhoz, és azon kiválasztani egy adatbázist. <?php $kapcsolat = mysql_connect("szerver", "azonosító", "jelszó"); mysql_select_db("proba", $kapcsolat);?>

Kapcsolódás egy adatbázis kiszolgálóhoz - folytatás A mysql_connect() sikeres csatlakozás esetén a kapcsolatra mutató változóval tér vissza, ellenkező esetben pedig FALSE-szal. A mysql_select_db("adatbázis neve", $kapcsolat) paranccsal tudjuk kiválasztani azt az adatbázist, amelyet használni szeretnénk. A MySQL kiszolgálóval létesített kapcsolat a szkript lefutásáig él, utána automatikusan megszakad.

Hibakezelés A kapcsolódás után hibakezelést is végezhetünk: if (!$kapcsolat) { die('hiba a csatlakozáskor: '. mysql_error()); } A die( Hibaüzenet ) paranccsal félbeszakíthatjuk a program futását, és kiírathatjuk a hiba okát. A mysql_error() függvény a legutóbbi MySQLnek küldött utasítás során keletkezett esetleges hibaüzenettel tér vissza.

A példa adatbázisunk Feladat: Szeretnénk nyilvántartani a kurzusainkat egy adatbázisban. Szükségünk van egy weblapra, ahol kilistázhatjuk a kurzusaink nevét és kreditértékét, valamint új kurzusokat szúrhatunk be az adatbázisunkba. Relációséma: Kurzus (kód, név, kredit) Ezt a táblát fogjuk létrehozni és adatokkal feltölteni a phpmyadmin segítségével. Később ezt SQLparancsokkal is meg tudjuk majd oldani.

Létrehozás phpmyadmin-ban Lépjünk be a phpmyadmin alkalmazásba a következő címen: http://localhost/phpmyadmin Hozzunk létre egy új adatbázist proba néven! Ebben hozzunk létre egy új táblát kurzusok néven 3 mezővel! Adjuk meg a 3 mezőt a következők szerint: kod: VACHAR típusú, 10 hosszúságú, PRIMARY Index nev: VACHAR típusú, 30 hosszúságú kredit: INT típusú

Adatok lekérdezése Listázzuk ki a kurzusaink nevét és kreditértékét! <?php $res = mysql_query("select * FROM kurzusok"); while($sor = mysql_fetch_array($res)) { echo $sor['nev']." ".$sor['kredit']; echo "<br />"; }?>

Adatok lekérdezése - folytatás A mysql_query("select * FROM kurzusok") parancs végrehajtja a paraméterben kapott lekérdezést és visszatér az eredménnyel. Ebben az esetben a kurzusok táblával. A fetch_array függvény lekérdezi egy eredménytábla következő sorát, amit asszociatív és egyszerű tömbként is használhatunk! Asszociatív tömbként kezelve az adattábla oszlopainak nevére hivatkozva érhetjük el a tábla sorainak egyes mezőit.

Írassuk ki táblázatban! echo "<table border='1'> <tr> <th>név</th> <th>kredit</th> </tr>"; while($sor = mysql_fetch_array($res)) { echo "<tr>"; echo "<td>". $sor['nev']. "</td>"; echo "<td>". $sor['kredit']. "</td>"; echo "</tr>"; } echo "</table>";

Űrlapokból származó adatok Készítsük el az alább látható űrlapot, és a feldolgozást végző PHP-lapot (kurzus.{html,php})! $sql="insert INTO kurzusok (kod, nev, kredit) VALUES ('$_POST[kod]','$_POST[nev]','$_POST[ kredit]')"; $res = mysql_query($sql); Az INSERT INTO tábla(mezők) VALUES (értékek) utasítással adatokat szúrhatunk be egy táblába.

Gyakorló feladatok Hozzuk létre a következő sémával rendelkező táblát: Könyv (sorszám, szerző, cím)! Készítsünk egy oldalt, amelyen megjelennek a táblában lévő könyvek adatai táblázatos formában! Készítsünk egy oldalt az új könyvek felvételéhez! Készítsünk egy legördülő listát, amely a könyvek címét tartalmazza (, a kulcsa pedig a könyvek sorszáma). Ezt helyezzük el egy űrlapba, amiről egy olyan oldalra juthatunk, ami a kiválasztott könyv adatait jeleníti meg!

Java JDBC MySQL

Példa

MySQL Migration Toolkit

Főbb lépések Forrás kijelölése Cél kiválasztása Objektumok kiválasztása Megfeleltetések módosítása Séma elkészítése Adatok átvitele