Webalkalmazás készítése - PHP
Országok listája
Hungary
Nyíregyházi Főiskola
Természettudományi Főiskolai Kar
Programozó matematikus
Záróvizsga
Webalkalmazás készítése - PHP
2009.02.01 19:31:29
Az alábbi szöveg egy formázás és képek nélküli előnézete a dokumentumnak. A tökéletes megjelenítéshez jelentkezz be, majd töltsd le a dokumentumot.
14. Webalkalmazások készítése PHP
A szoftverfejlesztés világában a Web alkalmazás (Web application, WebApp) egy program, melyet a weben keresztül érünk el az interneten, vagy intranet hálózaton.
A Web alkalmazások népszerqségének oka, hogy az Qket használó HYPERLINK "http://www.webgo.hu/bongeszo-webbongeszo-browser" \o "Böngészo, WebböngészQ, Browser" webböngészQ kliensek szinte minden gépen rendelkezésre állnak. Egy Web alkalmazás karbantartható a kliens gépek szoftverének változtatása nélkül. A legelterjedtebb Web alkalmazás a Webmail, Webáruház, online aukció, fórum, blog, de ezeken kívül számtalan létezik belQlük.
A Web alkalmazások története
A korábbi kliens-szerver architektúráknál minden egyes alkalmazásnak saját kliens programja volt, ami felhasználói felületként szolgált, és amit minden számítógépre fel kellett külön telepíteni. Egy szerver-oldali frissítés általában a kliens-oldal szoftverének frissítésével járt, ami kevésbé hatékony megoldás. Ezzel ellentétben a Web alkalmazások dinamikusan generálnak szabványos formátumú Web dokumentumokat (HTML, XHTML) , amit a webböngészQk támogatnak. A kliens-oldali szabványos nyelvq szkriptek, mint a JavaScript a böngészQkben már eleve megtalálható. Minden weboldal statikus dokumentumként érkezik a klienshez, viszont interaktív felhasználói élményt nyújt a beágyazott Web formokon keresztül. A kapcsolat közben a webböngészQ értelmezi és megjeleníti az oldalakat, és egy univerzális kliensként mqködik minden HYPERLINK "http://www.webgo.hu/web-alkalmazas-web-application-webapp" \o "Web alkalmazas, Web application, WebApp" Web alkalmazás számára.
Felhasználói felület
A Web felület kevés korlátot állít a kliens funkcionalitásának. Java, JavaScript, DHTML, Flash és más technikákkal, melyek segítségével lehetséges képernyQtartalmat megjeleníteni, hangot lejátszani, egérhez és billentyqzethez hozzáférni. Ezeket kombinálva egy operációs rendszerhez hasonló megjelenést tudunk elérni, melyet a felhasználó már jól ismer. Általános technikákat is támogat, mint pl. a drag and drop. Web fejlesztQk gyakran használnak kliens-oldali szkripteket, hogy bQvítsék a funkcionalitást, például oldal frissítése, újratöltése nélkül jelenítenek meg tartalmat. Az új technológiák a szerver-oldali nyelvek (pl. PHP) segítségével irányítják a kliens-oldali szkripteket. Ilyen technológia az AJAX, mely számos különbözQ technikákat alkalmaz a felhasználói élmény javítása érdekében.
Technikai megfontolások
A Web alkalmazások jelentQs elönye, hogy támogatják az alapvetQ böngészQ funkciókat, ezáltal függetlenek a kliens gép operációs rendszerétQl, illetve verziójától. Ahelyett, hogy a kliens programokat minden operációs rendszer számára külön megírnánk, az alkalmazást egyszer kell kifejleszteni, és szinte minden platformon mqködQképes. Azonban következetlen HTML, CSS, és DOM implementációk és a browser specifikációk különbözQsége problémákat jelenthet a Web alkalmazás fejlesztésében, és támogatásában. EltérQ felhasználói böngészQbeállítások (szkript futtatás tiltása, eltérQ betqtípus beállítás, stb.) szintén zavaró a Web alkalmazások következetes implementációjánál. Egy másik szemlélet az Adobe Flash és Java kisalkalmazások (Java applet) használata. A legtöbb browser manapság már támogatja ezeket a platformokat, ezért az ilyen alkalmazások bevezetése is ugyanolyan egyszerq. Nagyobb irányítást tesznek lehetQvé, megoldják a böngészQ beállítási problémákat. Architekturálisan viszont a hagyományos kliens-szerver alkalmazásokra hasonlítanak, ezért sokan vitatják a helyüket a Web alkalmazások között, ezért inkább Rich Internet Application (RIA) alkalmazásoknak nevezik öket.
Web alkalmazás felépítése
A Web alkalmazásokat általában három rétegre lehet bontani. Az elsQ réteg a webböngészQ, a középsQ réteg egy motor, mely dinamikus web tartalmat használ (pl. PHP, CGI, ASP, JSP), és az adatbázis réteg a harmadik. A webböngészQk kéréseket küldenek a középsQ rétegnek, ami kiszolgálja Qket azáltal, hogy lekérdezéseket és módosításokat végez az adatbázisban, majd megjelenítik a felhasználói felületet.
Üzleti használat
SzoftverfejlesztQ cégek egy feltörekvQ stratégiája, hogy Web hozzáférést biztosítsanak a már létezQ helyi alkalmazásokhoz. Ez lehetséges oly módon is, hogy egy teljesen más böngészQ alapú felületet fejlesztenek ki, de adaptálhatják a meglévQ alkalmazást is egy eltérQ megjelenítlssel. Azokat a cégeket, melyek ezt a stratégiát követik, hálózati alkalmazás szolgáltatóként (application service provider, ASP) említünk. Ezek a cégek egyre nagyobb figyelmet kapnak a szoftverpiacon.
Web alkalmazás fejlesztés
HJ¨¬Ú@ V d v °
Î
Ð
æ
è
ò
,
@
\
] k ã ó $ & : d ä æÔ¿§¿¿¿¿¿v¿vv¿m¿¿¿¿§¿¿¿v¿v§v¿m¿h)VXhÁ1ñPJ1jh)VXhÁ1ñCJOJPJQJUaJnH tH .h)VXhÁ1ñ6CJOJPJQJ]aJnH tH .h)VXhÁ1ñ5CJOJPJQJ\aJnH tH (h)VXhÁ1ñCJOJPJQJaJnH tH "h)VXCJOJPJQJaJnH tH 1h)VXhH9B*CJKHOJQJaJnH ph6_tH *HJ ò
,
: d Ð$F$h''J+~+ä7ì769.?ìBîBðBCéÝÝÝØÝØÝØÝØÝØÝØÝØÝÝÝÐËÝgdH9 $a$gd)VXgd)VX
$d a$gd)VXm$$$$d ¤ ¤[$\$a$gd)VXm$ Ð$F$h''J+~+2º2ú2ä7ì7ð7ö7~88ìBîBðBjElEÒEÔEôEöE.MëâëâëâëâàëÎë۰°zeLeLeLe1jh)VXhH9CJOJPJQJUaJnH tH (h)VXhH9CJOJPJQJaJnH tH hÝ-ªhH9>*OJQJ"hÝ-ªhÁ1ñ5>*CJOJQJaJ.h)VXh)VX5CJOJPJQJ\aJnH tH (h)VXh)VXCJOJPJQJaJnH tH h)VXh)VXPJ"h{tCJOJPJQJaJnH tH Uh)VXhÁ1ñPJ(h)VXhÁ1ñCJOJPJQJaJnH tH Sok különbözQ Web alkalmazás keretrendszer létezik, mely elQsegíti a gyors alkalmazás fejlesztést, lehetQvé téve a programozónak, hogy magas szintq leírást adjon a programról. Web alkalmazás keretrendszerek használata egyszerqsítheti a kódot, csökkentheti a hibák számát. Olyan alkalmazásoknál, melyek állandó feltörési kísérletnek vannak kitéve, a biztonsági problémák kiemelten fontosak. A keretrendszerek elQsegíthetik a legjobb technikák használatát, pl. GET a POST után. A Web Application Security Consortium (WASC) és OWASP projekteket azzal a céllal fejlesztették és dokumentálták, hogy elkerüljék a Web alkalmazások biztonsági problémáit. A Web Application Security Scanner egy speciális szoftver, ami segít észrevenni a Web alkalmazások hibáit.
PHP
A PHP egy szerver-oldali nyílt forráskódú szkriptnyelv, melyet dinamikus weboldalak készítéséhez terveztek. A szó jelentése rekurzív: PHP: Hypertext Preprocessor .
A PHP -t Rasmus Lerdorf írta 1994-ben C programozási nyelven, majd Zeev Suraski és Andi Gutmans átírva a szintaktikai elemzQjét, megalkották a PHP magját, a Zend Engine t. Jelenleg két fQ verziója létezik, a PHP 4 (Zend Engine 1.0) és PHP 5 (Zend Engine II). Az új verzió fejlettebb objektum-orientált programozást és hibakezelést, gyorsabb futást, jobb adatbázis támogatást, beágyazott SQLite és SOAP támogatást biztosít. A PHP egy széleskörben használt általános célú, HTML-be illeszthetQ szkriptnyelv, kifejezetten Web fejlesztésre optimalizálva, viszont írhatunk segítségével parancssori szkripteket, kliens-oldali grafikus alkalmazásokat is. A PHP általában webszerveren fut, PHP input kódot HTML kimenetté alakít, dinamikusan létrehozva így a weboldalakat.
Rengeteg operációs rendszert, webszervert és adatbázist támogat, ennek köszönhetQen mára több mint 20 millió PHP -val mqködQ domain létezik. Számos nyílt forráskódú és ingyenesen elérhetQ függvénykönyvtár és modul megtalálható a PHP-ben, pl. adatbázis kezelQ modulok, FTP hozzáférés kezelQ, beágyazott SQL függvények. A PHP fejlesztését a szabad szoftverközösség fejleszti, így rengeteg információ elérhetQ hozzá az interneten, sok fórum, fejlesztQi oldal foglalkozik a témával.
Mi a PHP?
Egy makrókészlet volt, amely személyes honlapok karbantartására készült. (Personal Home Page Tools)
KésQbb a PHP képességei kibQvültek, így egy önállóan használható programozási nyelv alakult ki.
2000. februárjában még csak 1,4 millió kiszolgálón használták 2000. októberére ez a szám 3,3 millióra ugrott. ( HYPERLINK "http://www.netcraft.com/" \t "_parent" www.netcraft.com)
Jelenleg hivatalosan a Hypertext Prepocessor az elnevezése.
Szerver (kiszolgáló) oldali programozási nyelv.
A PHP egy kiszolgáló-oldali programozási nyelv, amit többek között HTML oldalak készítésekor használnak. A hagyományos HTML lapokkal ellentétben azonban a kiszolgáló a PHP parancsokat nem küldi el az ügyfélnek, hanem azokat a kiszolgáló oldalán (szerver oldalon) a PHP-értelmezQ dolgozza fel. A programjainkban lévQ HTML elemek érintetlenül maradnak, de a PHP kódok lefutnak. Természetesen a PHP kódok nem jelennek meg a weboldal forrásában, csak az általuk elQállított eredmények. A kódok végezhetnek adatbázis-lekérdezéseket, dinamikusan létrehozhatnak képeket, fájlokat hozhatnak létre, olvashatnak és írhatnak, kapcsolatot létesíthetnek távoli kiszolgálókkal, a lehetQségek száma végtelen. A PHP kódok kimenete a megadott HTML elemekkel együtt kerül az ügyfélhez. Ez a folyamat nyomon követhetQ az 1. ábrán.
A PHP nyelv lényegében nagymértékq kiegészítése a HTML-nek, ugyanis rengeteg olyan feladat végezhetQ el vele, amelyre az ügyféloldali szkriptek nem képesek (vagy ha igen, korlátozottan). Ilyen pl. a bejelentkezés, az adatbázis kezelés, filekezelés, kódolás, adategyeztetés, kapcsolatok létrehozása, e-mail küldése, adatfeldolgozás, dinamikus listakészítés stb.
A HTML oldalba ágyazott PHP kód kezdetét és végét egyértelmqen jelölni kell a PHP értelmezQ számára. Ennek többféle módja közül leginkább a következQ ajánlható:
A következQ kis példa jól mutatja, hogyan ágyazzuk be a PHP kódot a HTML oldalba:
echo "Az oldalon megjelenQ szöveg";
?>
PAGE
PAGE \* MERGEFORMAT 3
Hasonló témájú dokumentumok
Egyelőre még egyetlen hasonló témájú file sincs feltöltve a rendszerbe
A mások által feltöltött dokumentumokat értékelheted. Ha úgy ítéled meg, hogy a vizsgára való felkészülés szempontjából hasznos volt egy dokumentum, akkor adj rá sokcsillagos értékelést.
Ha hibákat tartalmaz, vagy egyéb probléma van vele, akkor keveset.
A dokumentumok sorrendje az értékelések alapján adódik. Ami fentebb van a listában, azt hasznosabbnak ítélték társaid. Az új dokumentumok pedig (értékelések hiányában) szintén a lista tetején kezdenek.
Hozzászólások
Ha észrevételed van egy dokumentummal kapcsolatban (például hibát találtál benne), akkor a Hozzászólások részben jelezheted. Az olyan jellegű kérdéseket mint pl.: A 2. feladat 4. sorából milyen átalakítással jutottunk az 5. sorban szereplő képlethez? - szintén ide érdemes írni
Egy tipp az oldalhoz! - Szólj hozzá a feltöltött dokumentumokhoz. Minden feltöltött dokumentumhoz megírhatod a véleményed. Ha jónak találod, akkor adj rá sok pontot a csillagokkal. Ha nem találod jónak, akkor adj rá kevés csillagot, és írd le a Hozzászólásokhoz hogy milyen hiányosságok, hibák vannak benne. A dokumentumok a hallgatók értékelése alapján sorrendeződnek.