Miskolci Egyetem Gépészmérnöki és Informatikai Kar Általános Informatikai Tanszék
Szolgáltatók webshopja - ha megfelelő szolgáltatásokra vágysz
Szakdolgozat
Készítette: Név: Fiál Gábor János Neptunkód: C75TIV Szak: Mérnökinformatikus BSc Korszerű WEB technológiák szakirány Címe: Kazincbarcika, Zrínyi Ilona út 25. Tervezésvezető: Szűcs Miklós
Szolgáltatók webshopja - ha megfelelő szolgáltatásokra vágysz Fiál Gábor János C75TIV
Az általam használt technológiák ............................................................................. 27
2
Szolgáltatók webshopja - ha megfelelő szolgáltatásokra vágysz Fiál Gábor János C75TIV Az én oldalam ......................................................................................................................... 28
6.
6.1.
Az adatbázis szerver....................................................................................................... 28
6.1.1.
Csatlakozás az adatbázis szerverhez .................................................................... 28
Szolgáltatók webshopja - ha megfelelő szolgáltatásokra vágysz Fiál Gábor János C75TIV
1. Helyzetfelmérés Mai rohanó világunkban, ahol az emberek egyre többet dolgoznak, próbálják kevés szabadidejüket a családdal otthon tölteni. Az internet világa nagy segítségükre lehet ebben, hiszen a világháló lehetőséget biztosít hivatalos ügyek elintézésére, vásárlások lebonyolítására akár házhozszállítással is. Ezért gondoltam arra, hogy hasznos lehet egy olyan weboldal, ahol a szolgáltatások keresésére, megrendelésére van lehetőség. Szétnéztem a világhálón, és azt vettem észre, hogy olyan website, amely egy helyre összegyűjti a térségünkben lévő szolgáltatókat és azok szolgáltatásait, nem létezik. Így jutottam arra a következtetésre, hogy egy ilyen weblapot valósítanék meg és mutatnám azt be szakdolgozatomban. Célom egy olyan weboldal létrehozása, ami könnyen elérhető és kezelhető, ki sem kell mozdulnunk a lakásból, csak egy kis keresgélés, és az internet segítségével máris házhoz jön egy szakember, hogy elvégezze a nekünk szükséges szolgáltatást. Ilyen például:
Állatgondozás
Masszázs
Burkolás
Nyelvoktatás
Hűtőgépjavítás
Teherfuvarozás
Számítógép-újratelepítés
Fodrászat
Fűnyírás
Ablaktisztítás
Valójában ezek a vállalkozások megtalálhatók más-más weboldalakon, a saját kis webhelyükön. Ezeket a hirdetéseket nehezebb megtalálni és összehasonlítani egymással, ezért hasznosabb lenne egy közös oldal létrehozása, ahol össze lennének szedve azok a szolgáltatások, amelyekre szükségünk lehet. Nagyon jó lehetőség ez a vállalkozók számára is, ha bővíteni szeretnék a megrendelői körüket, hiszen valamilyen módon el kell érniük üzletfeleiket. Ehhez a legkönnyebb módszer az internetes marketing, amihez szükséges egy jól megszerkesztett weboldal. Ez azonban nagyon költséges lehet, hiszen a vállalkozónak fel kell keresnie egy hozzáértő szakembert. 4
Szolgáltatók webshopja - ha megfelelő szolgáltatásokra vágysz Fiál Gábor János C75TIV Az „Online Áruház” kifejezés az angol online szóból ered, amely magyarul elérhetőt jelent, tehát ezek a boltok többnyire állandóan elérhetőek, nem függenek a nyitvatartási rendtől vagy az ünnepi zárva tartástól és egyéb tevékenységektől. A weblapnak tartalmaznia kell a szolgáltató által forgalmazott összes vagy főbb szolgáltatásokat, ezentúl be kell mutatnia a szolgáltató profilját, referenciákat, amelyekből az ügyfél letudja szűrni, hogy megbízható-e. Én ezt úgy kívánom megvalósítani, hogy egy webshopban rendezem a szolgáltatásokat, amik között lehet válogatni, a kínálatot pedig maguk a vállalkozók töltenék fel az oldalra.
1.1.
Körültekintés
Első lépésként három webáruházat vizsgáltam meg, hogy azokból miket tudnék felhasználni az általam elkészítendő honlapon. Ezeket most részletesen bemutatom, jó és rossz tulajdonságaikat egyaránt. Az általam jónak vélt funkciókat szeretném én is megvalósítani, azokat pedig, amelyek az én megítélésem szerint rosszak, nem felhasználni. A weboldalon megjelenő közös funkciókat csak ott említettem meg, ahol először találkoztam velük.
5
Szolgáltatók webshopja - ha megfelelő szolgáltatásokra vágysz Fiál Gábor János C75TIV
1.2.
Chipland
Az oldal címe : http://www.chipland.hu/
Az oldal logója: Ez egy számítógépes bolt weblapja, Miskolcon
amely
található,
de
webshopként is üzemel. Nagyon jól működő és szép dizájnnal rendelkező weboldal,
ezért
választottam
első
vizsgálati alanynak. Bal oldalt fel vannak sorolva a kategóriák (1. ábra), így sokkal könnyebb elérni és megtalálni, amit keresünk. Ezt szeretném én is alkalmazni, hiszen kategorizálva sokkal egyszerűbb és logikusabb tárolni a szolgáltatásokat. Ahogy
rákattintunk
láthatóvá
válnak
egy
azok
kategóriára, a
1. ábra
termékek,
amelyek ide tartoznak. A regisztráció funkció az egyik fő komponens (2. ábra). Ha az ügyfél sűrűn „vásárol” az oldalon keresztül, az adatait nem kell minden egyes vásárlásnál megadnia, mert a rendszer már tudja a címét, nevét, stb., mert a regisztráció során már megadta. A megadott e-mailcímet a regisztrált felhasználó előzetes beleegyezésével reklámhoz is használni tudja a cég.
2. ábra
6
Szolgáltatók webshopja - ha megfelelő szolgáltatásokra vágysz Fiál Gábor János C75TIV Az oldalhoz való csatlakozás után elérhetővé válik a belépés opció, ezután már nincs szükség adataink újbóli megadására, de változás esetén módosítani tudjuk azokat. Léteznek olyan weboldalak, ahol nem is tudunk addig vásárolni, ameddig nem regisztráltunk, de ez az oldal nem tartozik közéjük. Én nem szeretném kötelezővé tenni a sajátomban a regisztrációt, anélkül is lehet „vásárolni” csak így ha visszatérő ügyfelek vagyunk, akkor tovább tart az esetenkénti megrendelés. Sok más egyéb előnnyel jár, ha valaki regisztrál a site-on, pl.: hírlevél, amelyben értesülhet a legújabb akciókról, nyomon követheti rendelését, véleményezheti a terméket és azt a kedvencei közé elmentheti. Ezek a lehetőségek mind-mind hasznosak. A termékkeresés az egyik legfontosabb funkció. Csak be kell írnunk a termék nevét vagy egy tulajdonságát, és máris leszűkíti a keresést a nekünk megfelelőre. Így nem kell átnéznünk egy adott kategóriába tartozó terjedelmes listát. Ez hasznos része egy ilyen típusú weblapnak. Persze az én esetemben nem termékekről beszélünk, hanem szolgáltatásokról, de a keresés formája itt is hasonló. Amint kiválasztunk egy adott árucikket vagy csak kilistázzuk egy adott kategórián belül, megjelenik egy „Kosárba teszem” felirat (3. ábra), amit ha kijelölünk, a termék bekerül a „kosarunkba”. Ez a lehetőség a webshopok lelke, ha az árucikk a „kosárba” került, meg tudjuk rendelni, regisztrációval vagy anélkül, de ki is tudjuk törölni onnan, ha csak véletlenül jelöltük, vagy meggondoltuk magunkat. A termék mellett jobbra (3. ábra) megjelenik egy olyan lehetőség is, amely az árban és a tulajdonságokban hozzá hasonlókat mutatja. Ez a funkció akkor lehet hasznos, amikor az adott termék nincs raktáron, de hasonló igen. Így a vevő lehetőséget kap arra, hogy másik terméket válasszon, így nem fog elpártolni, vagy másik webshopban „vásárolni”, mert talán elnyeri tetszését a felajánlott termék.
7
Szolgáltatók webshopja - ha megfelelő szolgáltatásokra vágysz Fiál Gábor János C75TIV
3. ábra Ha egy adott terméket kijelölünk, csak rövid leírást kapunk egy fix négyzetben, de ha többet szeretnénk tudni róla, akkor a bővebb leírás nyomógomb előhozza a további tartalmat is. Kategóriákon belül tudunk rendezni csökkenő vagy növekvő ár szerint is. Az adott terméknél meg tudjuk nézni a hozzászólásokat, a pozitív és az esetleges negatív véleményeket is, valamint mi is hozzá tudunk szólni, de ezt csak regisztrációval. Az árucikket meg lehet osztani egy közösségi oldalon is, ez reklám szempontjából jó fogás lehet, ha egy olyan oldal osztja meg, amelynek sok követője van. A kapcsolat menüpont alatt üzenetet küldhetünk a webshop üzemeltetőjének, itt téma alapján sok lehetőség közül lehet választani, elmondhatjuk véleményünket vagy szimplán tanácsot kérhetünk, akár panaszt is benyújthatunk.
8
Szolgáltatók webshopja - ha megfelelő szolgáltatásokra vágysz Fiál Gábor János C75TIV
1.3.
Praktiker
Címe: http://www.praktikerwebshop.hu/
Az oldal logója: Az első lehetőség, amely felkeltette a figyelmem, az oldal elején a mozgó képek vonzereje, ezzel az aktuális akciókról tájékoztatnak, és ha valamelyik képre rákattintunk, megjelennek az adott hirdetés részletei. Ilyen megnyerő fejlécet én is alkalmazni szeretnék. A legördülő menü több részből áll, amivel elrejtik a rengeteg információt, a keresett mégis kéznél van és könnyen elérhető, ezért nem túlzsúfolt az oldal. Ahogy lejjebb görgetek, a legnépszerűbb termékek mozgó-képszalag formájában ugyanúgy megjelennek, mint az akciós termékek. Ezen az oldalon is kevés szín dominál, főleg a kék árnyalatai, ez kellemes a szemnek, és hosszas böngészés után sem fárad el. A bejelentkező ablak szellős, könnyen áttekinthető (4. ábra).
4. ábra 9
Szolgáltatók webshopja - ha megfelelő szolgáltatásokra vágysz Fiál Gábor János C75TIV
1.4.
Laptop.hu
Címe: http://www.laptop.hu/
Az oldal logója: A laptop.hu-n a legnagyobb előny, hogy hatalmas a szűrési lehetőség (5. ábra), melyet egyszerű kezelni, ezért felhasználóbarát, ami fontos szempont, mert ha túlbonyolítanánk, akkor a felhasználók elpártolnának a weboldaltól.
5. ábra Szerintem az oldal egyetlen hibája az, hogy nagyon túlzsúfolt (6. ábra). Sok a szín, rengeteg az információ már a nyitó oldalon is, ami nem vonzó tulajdonsága egy webshopnak. A nyitó oldal legyen egyszerű és könnyen áttekinthető, hogy az emberek szívesen böngésszenek rajta.
6. ábra
10
Szolgáltatók webshopja - ha megfelelő szolgáltatásokra vágysz Fiál Gábor János C75TIV
1.5.
Tanulság
Mindhárom weboldalnak van jó tulajdonsága, ezeket szeretném én is felhasználni az általam készített honlapon. Meg szeretném valósítani:
Változó fejléc
Könnyen használható szűrési feltételek
Rendezés
Regisztráció, bejelentkezés
Regisztráció nélküli megrendelés
Megrendelések fül
Kategória oldal
Legördülő menük
Keresés
Bővebb leírás elrejtése
Kevés, de megnyugtató színek alkalmazása
Sok egyéb funkciót is alkalmazni kívánok, de ezek apró dolgok, ezért most nem említem őket, majd amikor sorra kerülnek, akkor fogom leírni a paramétereiket. Ezek az általam kiválasztott legfőbb webshop-elemek elengedhetetlenek ahhoz, hogy az oldal piacképes legyen. Az megvizsgált online áruházak honlapján talált rossz tulajdonságokat semmiképpen sem kívánom alkalmazni. El szeretném kerülni:
Túlzsúfoltság
Nagyon sok szín használata
Átláthatatlanság
Színfedések
Túl bonyolult menürendszer
Regisztráció-kötelezettség, ha csak felhasználó az illető
Haszontalan funkciók
11
Szolgáltatók webshopja - ha megfelelő szolgáltatásokra vágysz Fiál Gábor János C75TIV
2. Funkcionális szerkezet Weboldalam lehetőséget nyújt a felhasználóknak (magánszemélyek, vállalkozások) a számukra
szükséges
szolgáltatások
kiválasztására,
referenciák
ellenőrzése
utáni
megrendelésre, illetve a vállalkozók a honlapomon való regisztrációval hirdetési lehetőséghez is jutnak. Ennek a megvalósítását úgy szeretném megoldani, mint egy webáruházban, csak itt a termékek helyett szolgáltatások lesznek elérhetőek. Nézzük a weboldal funkcionalitását sorról sorra (7. ábra).
7. ábra Az ügyfél elindít egy böngészőt és fellép az oldalra. A felhasználó oldal
Az oldalon nincs szükség regisztrációra, de hasznos lehet, és ezután be lehet jelentkezni
Keresés a szolgáltatások között
Egy szolgáltatás megrendelése
Várni arra, hogy a szakember felvegye velünk a kapcsolatot
A szolgáltató oldal
Kötelező a regisztráció, ezután be lehet jelentkezni
Adatlap teljes kitöltése
Szolgáltatás létrehozása
Kapcsolatfelvétel a megrendelővel
12
Szolgáltatók webshopja - ha megfelelő szolgáltatásokra vágysz Fiál Gábor János C75TIV A szolgáltatói nézet kibővíti a felhasználói nézetet, ezért ott több funkció válik elérhetővé. Amit a felhasználó meg tud tenni, azt a szolgáltató is, de fordítva ez nem igaz, egy sima felhasználó nem tud szolgáltatásokat létrehozni. Amint regisztráltunk, hozzáférünk a Profil oldalunkhoz, itt beállíthatjuk bővebben az adatainkat, lakcím, egyéb elérhetőség, e-mail-cím. Lehetőség van a jelszó módosítására, illetve elfelejtett jelszó esetén új jelszó beállítására is, amelyről e-mailt kapunk. A státusz változtatására is lehetőség van megrendelőről szolgáltatóra, de visszafelé ez nem lehetséges. Ha szolgáltató fiókot hozunk létre, megnyílik egy újabb funkció, ahol bővíthetjük kínálatunk körét vagy a már létezőket módosíthatjuk. A kategóriák lecsökkentik ugyan a szolgáltatásokat, hogy könnyebben elérhessük a keresendőt, de ez csak az oldalon lévő könnyebb eligazodást szolgálja. A rendezés funkció is elérhető lesz, ami még tovább segíti a felhasználót a keresésben. Egyéb funkciók is lesznek a website-on, ezeket később részletesen ismertetem pl. elérhetőség, információk, stb.
13
Szolgáltatók webshopja - ha megfelelő szolgáltatásokra vágysz Fiál Gábor János C75TIV
2.1.
„Mintaoldal”
Ez a fejezet azért kapta ezt a címet, mert ezek a leírások az összes oldalra érvényesek lesznek. A többi fejezetben csak az eltéréseket írom le a mintaoldalhoz képest. A weblapon minden fő rész szét van szedve, hogy könnyebben megkülönböztethetőek legyenek egymástól és jobban mutassanak (8. ábra). Legfelül, középen van a fejléc, ahol megjelenik az aktuális ajánlat, a legújabb szolgáltatás, ez mindig frissülni fog, amint egy újat töltenek fel az oldalra. Mellette balra található a weboldal logója, amit később fogok bemutatni. Ugyanitt jobboldalt lesz elérhető a bejelentkezés, regisztráció és az elfelejtett jelszó funkció. A fejléc alatt lesz egy menüsor. Ez egy legördülő menüsor, hogy ne legyen túlzsúfolt az oldal. Lenyílás után könnyen használhatóak lesznek majd. A menüsor mellett, de még a fejléc alatt a keresés funkció található meg. Bal oldalon a kategóriák blokk fog szerepelni, ami megkönnyíti majd a szolgáltatás kiválasztását, azon belül lesz egy részletesebb szűrő is, melyről később bővebben írok. Jobb oldalon a regisztráció alatti részen található a „Megrendelések” fül, ahová azok a szolgáltatások kerülnek, amelyeket a vevő már megrendelt, vagy amelyeket a szolgáltatótól megrendeltek. Ennek az opciónak jól láthatónak kell lennie, hiszen ezen keresztül teljesül a weboldal fő feladata. A „Megrendelések” alatt helyezkedik el egy bérelhető reklámfelület. Az oldalakon még lehetnek egyéb linkek. A képernyő közepe minden oldalon más és más a tartalomtól függően. Hiszen minden fő funkció ide töltődik be, ezért ez a terület a munkafelület. Hasonlóan működik a jobb felső négyzet is, azzal az eltéréssel, hogy ha bejelentkezett a felhasználó, akkor itt előkerül a Profil, Szolgáltatásaim, Kijelentkezés funkció gomb, és az előzőek eltűnnek.
8. ábra
14
Szolgáltatók webshopja - ha megfelelő szolgáltatásokra vágysz Fiál Gábor János C75TIV
2.2.
Kezdőoldal
A lap közepén egy üdvözlő üzenet található. Bal szélen felül a cég logója látható, mely egyben egy link is, ami a kezdőoldalra navigál át minket. A következő ábrán látható:
9. ábra
2.3.
Kategória-kiválasztás
Itt a középső munkarészen látható egy szűrő és az adott kategóriába tartozó szolgáltatások (10. ábra). Ezeket úgy listázza ki, hogy egy adott méretű téglalap alakú kis keretben, felül a szolgáltatás neve szerepel, ami egy link is egyúttal, mely átirányít minket a „kiválasztott szolgáltatás” nézetre. Emellett szintén egy link jelenik meg, ami a szolgáltató nevét mutatja meg, ezen keresztül tudjuk megnézni az adatlapját a szolgáltatás tulajdonosának. Középen egy rövid leírás, majd jobbra egy kép, amit a szolgáltató töltött fel, vagy alapértelmezett kép. Szerkezetileg csak a változásokat mutatom meg a vázlatban.
10. ábra
15
Szolgáltatók webshopja - ha megfelelő szolgáltatásokra vágysz Fiál Gábor János C75TIV
2.4.
A kiválasztott szolgáltatás
A szolgáltatás kiválasztása egy másik oldalra irányít át minket, ahol olvashatjuk annak nevét, rövid leírását, egy bővebb leírását is és láthatjuk a hozzá tartozó képet (11. ábra). Az érdeklődésünket felkeltő hirdetést meg tudjuk rendelni a leírás alatt található gomb segítségével.
11. ábra Miután már van megrendelt szolgáltatásunk, a jobb oldalt középen található „Megrendelések” fül alatt (12. ábra), meg tudjuk nézni kilistázva, hogy mit és kitől rendeltünk, vagy ki és mit rendelt tőlünk. Ezeknek a megrendeléseknek a hozzá tartozó üzenete, és az arra kapott válasz is megjelenik.
12. ábra
16
Szolgáltatók webshopja - ha megfelelő szolgáltatásokra vágysz Fiál Gábor János C75TIV
2.5.
Bejelentkezés, regisztráció
13. ábra A weboldalon regisztrált felhasználók a nicknevük és jelszavuk alapján könnyedén beléphetnek az oldalra. A sikertelen bejelentkezés oka lehet rossz jelszó vagy hogy nem tagja még az oldalnak, azaz nem regisztrált. Abban az esetben, ha valaki szeretne az oldal regisztrált felhasználói közé tartozni, annak használnia kell a regisztráció menüpontot (13. ábra). Itt vannak kötelezően kitöltendő mezők, amelyek nélkül nem lehet regisztrálni, ha mégis ezek nélkül próbálkozunk, hibaüzenetet kapunk. A sikertelen regisztráció oka lehet többek között a felhasználónév egyedisége vagy a hibás e-mail-cím. Hiba lehetőségként előfordulhat még az is, hogy a „Jelszó” és a „Jelszó még egyszer” mezők tartalma nem egyezik. Ez vonatkozik a „E-mail-cím” és „E-mail-cím még egyszer” mezőpárosra is (14. ábra). Az oldal használati szabályzatának elfogadása kötelező. Be kell állítani, hogy szolgáltatói vagy felhasználói fiókot hozzunk-e létre.
Abban az esetben, ha hibás a jelszavunk bejelentkezéskor,
akkor
segítségünkre
lehet az „Elfelejtett jelszó” opció, ahol email-cím
vagy
felhasználó
név
megadásával új jelszót kaphatunk. Ha a megadott e-mail-cím vagy felhasználónév az adatbázisban nem szerepel, akkor hibaüzenet jön elő. 14. ábra 17
Szolgáltatók webshopja - ha megfelelő szolgáltatásokra vágysz Fiál Gábor János C75TIV
3.
Dizájn
Webshopom kialakítása, tervezése során nagy figyelmet fordítottam arra, hogy az oldal harmonikus és egységes legyen. Igyekeztem megtalálni a képek, ábrák közötti egyensúlyt, hiszen ezek nagyon könnyen elvonhatják a felhasználó figyelmét a szövegi tartalomról. Mivel egy weboldal feladata az információ átadása, törekedtem arra, hogy a lényeges információk a szolgáltatásokról könnyen elérhetőek legyenek. A honlap külleme nagyon fontos feladat annak készítése során. Ez alapján alakul ki a látogató első véleménye rólunk, megfoghatjuk, de akár el is tántoríthatjuk ezzel leendő ügyfeleinket. Munkám során próbáltam a honlaphoz egy olyan webes arculatot létrehozni, amely vonzza a felhasználókat és nem eltaszítja őket annak használatától. Egy weblap színösszeállítása is sokkal nagyobb jelentőséggel bír, mint azt a legtöbb megbízó, felhasználó vagy kezdő weblapkészítő elsőre gondolná. Ha megfelelően átgondolva,
következetesen
alkalmazzuk
a
színeket,
növelhetjük
weboldalunk
teljesítményét. Rossz összeállítással viszont a legjobb marketing-szöveggel, vagy a legmegbízhatóbb referenciákkal is képtelenség a sikeres üzemeltetés. Szükségünk van tehát egy jó színösszeállításra és elrendezésre. Az emberek többsége legalább 1280*768 felbontású monitorral rendelkezik, így ehhez mérten készítem el a weboldalt. Nem maga az egész website lesz ekkora méretű, csak a képernyőn megjelenő főablak. Ez lesz ekkora felbontásra optimalizálva és lefelé a függőleges síkban a változó terjedelműre megalkotva. Lényeges, hogy ne legyen túl sok szín, és a túlzsúfoltságot is el kell kerülni, mert akkor a látogatottság lecsökkenhet. A háttérkép egy szürke minta, mert azon szinte minden más szín jól látható.
18
Szolgáltatók webshopja - ha megfelelő szolgáltatásokra vágysz Fiál Gábor János C75TIV
3.1.
Logó
„Sok cégtulaj úgy áll hozzá a logótervezéshez, hogy nem veszi figyelembe azt az üzenetet, amit a cég a célcsoportjának kíván közvetíteni. Helyette olyan dolgokra fókuszálnak, amelyek szépek, divatosok. Csakhogy ezek könnyen idejétmúlttá válhatnak néhány éven belül. Látható, hogy a világ legnagyobb cégeinek logóira ez nem igaz, hiszen hosszú évek, évtizedek alatt alig-alig változtak (lásd. Pepsi, Sony, Lego, Ford, Kodak, Mercedes). A logótervezésnél az is nagyon fontos szempont, hogy a kész logó könnyen adoptálható legyen a különböző médiumokba. Ez persze nagyban függ attól is, hogy hol akarjuk azt használni. Fontos az is, hogy logót azonnal felismerjék. [7] ”
15. ábra A logó megtervezésére nagy gondot fordítottam. A tárcsázós telefon mintájára alkottam meg, ami a kapcsolatfelvételnek az egyik legrégebbi, jellegzetes szimbóluma. A középső kör körül elhelyezkedő kis körökben lévő ábrák mind egy-egy kategóriára utalnak (15. ábra). Szimbólumok jelentése:
Középen az SZW rövidítés a Szolgáltató webshopot jelenti.
19
Szolgáltatók webshopja - ha megfelelő szolgáltatásokra vágysz Fiál Gábor János C75TIV
3.2.
Színek
Ahogy azt már említettem az előzőekben, a háttér szürke színű lesz, mert ez kellemes a szemnek és nem fárasztja. A színezést RGB színskálával fogom beállítani. A fő szín a cellák háttérszínében a kék lesz. Más színekkel kell kiemelni a főbb elemeket, hogy megkülönböztethetőek legyenek az alap karakter színektől, amiben itt a fekete és a kék árnyalatai dominálnak, mert ez jól mutat a szürke vagy kék cellák hátterén, és nem zavarja az emberi szemet sem (16. ábra). A főbb szempont, amit még hangsúlyoztam, hogy könnyű legyen megtalálni a „Megrendelések” gombot, ezért ennek egy nagyon jól látható központi elemnek kell lennie. Így esett a választásom arra, hogy közvetlenül a bejelentkezési
fül
alá
helyezzem.
szolgáltatás
A
nevét
és
tulajdonosát
is
megkülönböztettem, mert ezek fontos információk, ezért muszáj a többi adat fölé emelni láthatóságban. A fejléc már egy jobban mutató fehér hátteret kapott. Beljebb haladva az oldal megtartja ezeket a színösszetételeket, tehát lesz egy könnyen felismerhető, jellegzetes stílusa, amivel a weboldal kap egy sajátos arculatot.
16. ábra
20
Szolgáltatók webshopja - ha megfelelő szolgáltatásokra vágysz Fiál Gábor János C75TIV
Adatbázis
4.
Az ábra lekicsinyített verzióját mutatom be itt, ami a mellékletben eredeti méretben található meg. Az ER modellben és a Relációs modellben a tagokat ékezetes betűk használata nélkül hoztam létre, hogy biztos ne okozzon semmi konverziós hibát. Minden elemet úgy tüntetek fel ide, ahogy az ER modellben és Relációsban van, tehát ez nem nyelvi hiba.
ER modell
4.1.
Minden adatbázis első lépése megszerkeszteni az ER modellt, mert ezen a modellen jól látható az adatbázis szerkezete (17. ábra). Ezt a mintát követve átalakíthatjuk bármelyik másik adatbázis modellre.
l7. ábra Két egyedet hoztam létre:
Felhasznalo:
Szolgaltatas
Két kapcsolattal:
Megrendel
SzolgLet
A továbbiakban részletesen kifejtem az egyedek tulajdonságait, majd ezekről rövid leírást is adok. A köztük lévő kapcsolatokkal is ugyanezt teszem.
21
Szolgáltatók webshopja - ha megfelelő szolgáltatásokra vágysz Fiál Gábor János C75TIV
4.1.1. Egyedek a) Felhasznalok
Felhasznalonev: kulcs típusú, egyedi, a felhasználót azonosítja be, más néven nickname
Jelszo: a felhasználó jelszava, amit hash kóddal lekódolva tárolunk el
Nev: összetett tulajdonság, a következőket tartalmazza o Keresztnev: a felhasználó keresztneve o Vezeteknev: a felhasználó vezetékneve
Elerhetoseg o Telefon: telefonszám o Emailcim: e-mail-cím
Lakcim: összetett tulajdonság, felhasználó lakhelye o Telepules: a település neve o Utca: utca neve o Hsz: házszáma o Irsz: irányítószám
Szolgaltato: megmondja, hogy a felhasználó szolgáltató vagy sima felhasználó
Tapasztalat: megadja, hogy a szolgáltató mennyire tapasztalt, három típusa lehet, Kezdő, Haladó, Profi
b) Szolgaltatasok
Szkod: a szolgáltatás kódja, ezzel azonosítjuk, egyedi
Nev: a megnevezése
Kep: a hozzá tartozó kép URL kódja
RovidLeiras: a szolgáltatás rövid leírása
Leiras: bővebb leírás a szolgáltatásról
Kategoria: itt tároljuk, hogy melyik kategóriába tartozik
Tulajdonos: Egy idegen kulcs, ebben tároljuk le a szolgáltató nevét, aki létrehozta
22
Szolgáltatók webshopja - ha megfelelő szolgáltatásokra vágysz Fiál Gábor János C75TIV
4.1.2. Kapcsolatok c) Megrendel
Datum: a megrendelés dátuma
Uzenet: a megrendelés során írt üzenet, amelyben leírhatjuk, hogy hová és mikor szeretnénk a szolgáltatást megrendelni
Valasz: a szolgáltató válasza a megrendelőnek az általa írt üzenetre
Azért van szükség a kapcsolatra, hogy amikor egy felhasználó megrendel egy szolgáltatást, akkor nekünk is tudnunk kell, hogy ki, mit, mikor rendelt. Több-több kapcsolat azt jelöli, hogy minden szolgáltatásnak lehet több megrendelője, és minden felhasználó rendelhet több szolgáltatást is. d) SzolgLet Ha egy felhasználó szolgáltatóvá válik, akkor maga is létre tud hozni szolgáltatásokat, ehhez szükséges ez a kapcsolat.
4.2.
Relációs modell
„A relációs modellnek megfelelően az adatok a relációs adatbázisokban relációkban tárolódnak, amelyeket a felhasználó táblák formájában érzékel. Minden reláció egyedekből (tuple, rekord) és jellemzőkből (mező) épül fel. Ezen kívül a relációs adatbázisoknak természetesen más tulajdonságaik is vannak. [5]” A relációs modellt az ER modell alapján készítettem el (18. ábra).
18. ábra 23
Szolgáltatók webshopja - ha megfelelő szolgáltatásokra vágysz Fiál Gábor János C75TIV Három táblánk van, ebből kettő az egyedekből született és egy a kapcsolatokból. Egy rövid szótár: FK(foreing key): kapcsoló kulcs PK(primary key): elsődleges kulcs NN(not null): nem lehet üres Date: dátum típus C(char): karakter típus, zárójelben pedig a szám, hogy hány karakter írható be N(number): szám típus, zárójelben pedig a szám, hogy hány karakter írható be
4.3.
SQL
Amikor elkészítem az adatbázist, SQL nyelven fogom létrehozni a táblákat, de ennek módját és leírását később fogom részletezni. „Ha az adatbázisaink szerkezete nem megfelelő, a látszólag egyszerű információk kinyerésével is gondjaink lehetnek, adataink nehezen kezelhetővé válnak, és minden alkalommal kínszenvedés lesz mezőket adni a táblákhoz vagy mezőket törölni onnan. A rosszul megválasztott felépítés az adatbázist az adatok következetessége, a táblák kapcsolatai és a pontos információk kinyerése szempontjából is érinti, és ezek csak a jéghegy csúcsát jelentik. Ha el szeretnénk kerülni a kínlódást, gondoskodjunk róla, hogy az adatbázisaink szerkezete helyes legyen. [5]”
24
Szolgáltatók webshopja - ha megfelelő szolgáltatásokra vágysz Fiál Gábor János C75TIV
5.
A létező fejlesztői nyelvek
Egy weboldal fejlesztését többféleképpen is meg lehet oldani, első lépésben ismertetem a használható fejlesztési nyelveket egy kis rövid leírással. 5.1.
HTML
„A HTML a Hyper Text Markup Language rövidítése. A HTML állomány egyszerű szövegállomány, amely rövid jelölő tagokat tartalmaz. Bizonyos tagok, tulajdonságok a böngészők által nem egységesen támogatottak, így ezeket a gyakorlatban is csak kevesen használjak. A HTML nyelv az az alap, amivel minden webfejlesztőnek először meg kell ismerni, és alaposan tisztában kell lenni. [2] ” 5.2.
CSS
„A CSS (Cascading Style Sheets, rangsorolt stíluslapok) a W3C egyesületnek a weblapok megjelenítésére vonatkozó szabványa (bár más beállításokhoz is lehet használni). A CSSben sokféle értéktípus van; ezek legtöbbjéhez mértékegység is tartozik. Az alapvető értéktípusok
(például
számok)
mértékegységekkel
(például
képpontokkal)
való
kombinálásával számtalan érdekes dolgot megvalósíthatunk a CSS-ben. [3] ”. Jelenleg 2.1es verziónál tart. 5.3.
JavaScript
„Ez a programozási nyelv a dinamikus weblapok használatának köszönhetően rendkívül elterjedt. Elsősorban weblapokon találkozhatunk velük, de tudjuk futatni a Windowsban a JS-kiterjesztésű JavaScript programokat tartalmazó fájlokat, így alkalmazása szélesebb körű is lehet. A weblapokon a Microsoft fejlesztéseként megjelent VBScript programok is futtathatók a Microsoft Internet Explorer webböngészőben, viszont e korlátozás miatt még a Microsoft weblapjain is a széles körben elterjedtebb JavaScript programokkal találkozunk. [1] ”
25
Szolgáltatók webshopja - ha megfelelő szolgáltatásokra vágysz Fiál Gábor János C75TIV 5.4.
PHP
„Programozási nyelv webes felületen (a Personal Home Page rövidítése). A PHP szerveroldali szkript nyelv, amivel egyszerűen tudunk aktív weboldalakat készíteni. Létezik kliensoldali (pl.: Java) és szerveroldali kiszolgálás (pl.: PHP). Az Apache-ba épül be a PHP nyelv, ezt alapjáraton nem ismeri fel a böngésző. A HTML oldal kódjában a PHP kódot: tag-ek közé kell írni. Ezek a hagyományos, PHP kódblokk kijelölésére szolgáló elemek. [6] ” 5.5.
ASP
„Az ASP az Active Server Pages rövidítése. Az ASP Microsoft technológia, amit általában a szintén Microsoft által jegyzett IIS (Internet Information Server) szerverrel együtt szokás használni. Első változata 1996 decemberében jelent meg.[8] ” 5.6.
JSP
„A JavaServer Pages egy technológia, melynek segítségével a szoftverfejlesztő dinamikusan tud generálni HTML, XML vagy egyéb dokumentumokat HTTP kérésekre reagálva. A JSP tekinthető a szervlet réteg feletti absztrakciós szintnek. A JSP oldalból java szervlet forráskód generálódik. A JSP 2006 májusa óta a J2EE specifikáció része. [8]” 5.7.
JavaBeans
„A JavaBeans egy újrafelhasználható, állapotot reprezentálni képes, átvitelt is segítő Java tervezési minta. A JavaBeans specifikációt a Sun dolgozta ki, eredetileg GUI komponensek adatreprezentációjához. [8] ” 5.8.
Enterprise JavaBeans
„Az Enterprise JavaBeanek (EJB) moduláris vállalati alkalmazásokban használt szerveroldali komponensek. Általában az üzleti logika implementációját tartalmazzák. Az EJB specifikációt eredetileg az IBM adta ki 1997-ben. Később, 1999-ben, a Sun Microsystems is elfogadta, alkalmazta (EJB 1.0 és 1.1), és tovább terjesztették a Java Communuty Process alatt. [8] ”
26
Szolgáltatók webshopja - ha megfelelő szolgáltatásokra vágysz Fiál Gábor János C75TIV 5.9.
Java
A Java egy általános célú programozási nyelv. Fejlesztését a Sun Microsystem végezte a 90 es évektől 2009-ig, amikor is a céget megvásárolta az Oracle. A Java 1.7 es verzióját már az Oracle adta ki. [8] A fejlesztő nyelv objektum-orientált, lehetőség van kész csomagok használatára, hasonlít C++ nyelvhez. Az osztályok adattagokból és metódusokból jönnek létre. Bármilyen szövegszerkesztővel fejleszthető nyelv. A karakterkészlet unicode. A JVA(Java Virtual Machine) futtatja a lefordított kódot. A Java nyelv kis- és nagybetű érzékeny. 5.10. Előnyök, hátrányok Néhány programnyelvnek kigyűjtöttem az előnyeit és hátrányait. Nyelv:
PHP Könnyen
Előny:
megtanulható Népszerű
Hátrány:
Lassú
ASP
HTML
JSP
Technológiailag
Egyszerű,
Java
fejlett
gyors fejlesztés
nyelvezet
Bonyolult
Nem való
feladatokra nem
kisebb
alkalmas
oldalakhoz
Drága az üzemeltetése
5.11. Az általam használt technológiák Html kódban írom meg a weboldalt, de a logikai funkciókat a Java nyelv segítségével fogom megvalósítani. Természetesen a formázást CSS-el készítem el. Servleteken keresztül küldöm az adatokat és JavaScript felhasználásával „okosítom”, szépítem az oldalt. Php-t nem fogok benne használni, hiszen nincs hozzá szerverlehetőségem.
27
Szolgáltatók webshopja - ha megfelelő szolgáltatásokra vágysz Fiál Gábor János C75TIV
6.
Az én oldalam
A lapot NetBeans fejlesztőeszközzel hozom létre, ahol servletek segítségével jelenítem meg az oldalt. Azért választottam ezt a megoldást, mert technológiailag fejlett, használata „egyszerű” és nagy a támogatottsága, hiszen java nyelven implementált. A weboldal formai alapja egy táblázat, aminek fixek a méretei és az arányai egymáshoz képest. Ebbe szerkesztem bele a weboldal azon részeit, ami éppen aktív, azaz használat alatt van. Ezt úgy kell elképzelni, hogy a táblázat közepére töltődik be a szükséges funkció, amit éppen meghívtak. A szükséges adatokat, amelyek egy adat betöltéséhez kellenek, formokon keresztül juttatom el a servleteknek. A weboldal felépítéséhez és logikai működéséhez Java nyelvet használok. 6.1.
Az adatbázis szerver
Az adatok tárolására egy XAMPP nevű program segítségével MySQL szervert használok a fejlesztés alatt, ami ingyenes licenccel rendelkezik, ez helyileg működik a számítógépemen (localhost). Létrehoztam vele egy adatbázist, melynek három táblája van. Az előzőekben leírtak alapján vannak a táblák és a mezőik felsorolva. Mind az adatbázis, mind annak táblái és azok mezői is "utf8_hungarian_ci" kódolásban tárolják az adatokat. Az adatbázis motor InnoDB. MySQL szervernek van egy kezelő felülete a böngészőben a phpmyadmin oldalon, ahol mindent be tudunk állítani és le tudunk ellenőrzi, amire csak szükségünk lehet.
6.1.1. Csatlakozás az adatbázis szerverhez Ahhoz, hogy csatlakozni tudjak a szerverhez, a weboldalon keresztül létrehoztam egy MySQLConnection.java fájlt, amiben egy metódus meghívásával már csatlakoztunk is az adatbázishoz, persze előtte példányosítanunk kell az osztályt, ami tárolja azt. Ennek a folyamatnak a végrehajtásához Szűcs Miklós elektronikus jegyzetét[4] használtam fel. MySQLConnection mysql = new MySQLConnection(); mysql.Reg(); mysql.Kapcs(); mysql.Lekapcs();
28
Szolgáltatók webshopja - ha megfelelő szolgáltatásokra vágysz Fiál Gábor János C75TIV Első lépésben regisztrálnunk kell a drivert, ami egy jdbc driver. Ehhez a pom.xml-ben hozzá kellett adnom a függőségekhez a hozzá tartozó jar fájl leírását, ami ezután automatikusan letöltötte és megfelelő helyre illesztette. <dependency> mysql <artifactId>mysql-connector-java 5.0.8-bin A következő lépésben egy új metódusban, megadtam neki az adatbázis szerver elérési címét, nevét és a hozzá tartozó autentikációs adatokat, amelyekkel kapcsolódik is az adatbázishoz. Egy lekapcsolódás nevű metódust is készítettem, ami megszakítja a kapcsolatot az adatbázissal. Ugyanebben a kapcsoló fájlban hoztam létre a szükséges eljárásokat, egyenként metódusokba foglalva. Ezekre még később visszatérek konkrét példával. 6.2.
Apache Tomcat szerver
Az Apache Tomcat egy web szerver és web konténer, amely biztosítja a specifikációt a servletek és JSP oldalak számára. Ez egy beépített plugin a NetBeans-ben, ha szervletet akarunk futtatni, akkor automatikusan elindítja. Amint valami hiba történt, a fordítási vagy futási időben a szerver output mezője értesített róla. Megmondja a hiba helyét és a hiba okát, így sokkal könnyebb volt azokat a problémákat megoldani, amelyek miatt nem futott az oldal. 6.3.
A fejlesztés folyamata
A lefordított kódot folyamatosan teszteltem Mozilla Firefox 37.0.2-vel. Többféle adattal is próbálkoztam, ami csak szóba jöhet. Sajnos az ő és ű karaktereket a formokon keresztüli átadás miatt hibásan tárolja el az adatbázis, ezért az ezekkel képzett jelszót, e-mail címet, felhasználónevet letiltottam úgy, hogy csak az angol abc betűinek bevitelére van lehetőség. Viszont ha közvetlenül szeretném az adatokat beleírni az adatbázisba, ami tartalmaz ő és ű
29
Szolgáltatók webshopja - ha megfelelő szolgáltatásokra vágysz Fiál Gábor János C75TIV betűket, azt helyesen tárolja le. Rengeteget próbálkoztam, hogy kijavítsam ezt a hibát, de ennek megoldására ez idáig nem sikerült rájönnöm.
6.3.1. Regisztrációs felület Miután elkészültem az oldal szerkezeti felépítésével, úgy gondoltam, hogy az lenne logikus sorrend az elkészítésben, ahogy azt a felhasználók is használják. Tehát ha egy felhasználó vagy szolgáltató fellép az oldalra, első dolga az lesz, ideális esetben, hogy regisztrál az oldalon. A tagság kezdeményezését egy külön oldalon oldottam meg, ahol egy form mezőit kell kitölteni. Ezek a mezők ellenőrzés alatt dolgoznak, például vizsgálják az e-mail-cím helyességét, vagy hogy foglalt-e a felhasználónév. Ha bármilyen hiba van, az adatok megmaradnak, csak figyelmeztet minket egy felugró üzenetben arra, hogy változtassunk a kitöltött mezőn, mert így nem fog létrejönni a regisztráció. Már itt be tudjuk állítani, hogy szolgáltatók vagy felhasználók akarunk-e lenni a webshopban. Ha sikeres a regisztráció, arról kapunk egy e-mailt a megadott e-mail-címre a regisztrációs adatainkkal. Az adatbázisban letárolódnak az adataink, persze a jelszó az kódolva, hiszen nem szeretnénk visszaélni a felhasználók jelszavaival, mert tudjuk, hogy az emberek sok helyen ugyanazt a jelszót használják. Ez úgy működik, hogy egy hashkód segítségével mikor felvisszük a jelszót, akkor az átalakítja és úgy tárolja le, hogy az visszafejthetetlen a „salt” és a kódolási forma nélkül. Amikor a felhasználó be akar jelentkezni, ugyanezt a módszert alkalmazzuk, tehát a beírt jelszót átalakítjuk és leellenőrizzük, hogy egyezik-e az adatbázisban letárolttal, és ha igen akkor az oldal engedélyezi a belépést. Ehhez létrehoztam egy függvényt, aminek segítségével ezt megoldottam, amihez csak a jelszó mezőt és „salt”-ot kell hozzá megadnom, és máris visszaadja az átalakított adatot. UPDATE
felhasznalok
SET
jelszo=SHA1(CONCAT("adminjelszó",
"SALT")) where Felhasznalonev="adminfelhasznalónév" select Felhasznalonev from felhasznalok where Felhasznalonev ="adminfelhasznalónév"
and
Jelszo=createHash("adminjelszó",
\"SALT\")
30
Szolgáltatók webshopja - ha megfelelő szolgáltatásokra vágysz Fiál Gábor János C75TIV
6.3.2. Elfelejtett jelszó és az e-mail-küldés Amikor a felhasználó elfelejti a jelszavát, szükségessé válik az elfelejtett jelszó funkció. Ezt úgy oldottam meg a weboldal többi részéhez hasonlóan, hogy ez is egy külön oldalon, a képernyő közepére a „munkaterületre” töltődik be. Itt egy mező van, amelyben a felhasználónevet vagy az e-mail-címet kell megadnunk. A funkció segítségével küld egy üzenetet az adatbázisban tárolt e-mail-címünkre egy új generált jelszóval. Abban az esetben, ha nem létezik a megadott e-mail-cím vagy felhasználónév, hibaüzenet jelenik meg. Nehezen jöttem rá, hogy hogyan is kell e-mailt küldeni java felületen keresztül, de szerencsére sok weboldal ír a probléma megoldásáról. Ennek a metódusát is a kapcsoló fájlomban hoztam létre, aminek csak a megfelelő paramétereket kell megadni és azonnal megtörténik az e-mail küldése. Szükség van itt is egy jar fájlra, amit ugyanúgy muszáj függőségként hozzáadni a pom.xml-hez, mint a jdbc connectort. Meg kell adnunk azt, hogy ki legyen az üzenet feladója, azt a hálózati host-ot, ami az internet szolgáltatóé, ahol a szerver van, amelyről küldjük az e-mailt, és be kell állítani a smtp szerver tulajdonságait. Le kell ellenőrizni, hogy a cím, amire küldeni akarjuk, valóban helyes e-mail-cím-e. Erre azt a függvényt használtam, majd máshol is alkalmaztam, ahol e-mail cím helyességet kellett megállapítani. A metódus, amin keresztül küldöm, megvizsgálja, hogy tényleges email-címről van-e szó, és ha igen, akkor automatikusan elküldi rá az e-mailt. Ellenkező esetben kiolvassa a felhasználónévhez tartozó e-mail-címet és arra küldi el. Ez itt az email-cím ellenőrés: try { InternetAddress emailAddr = new InternetAddress(felhemail); emailAddr.validate(); } catch (AddressException ex) { System.out.println(ex + "hiba"); }
6.3.3. Bejelentkezés Miután regisztráltunk az oldalra, megnyílik egy újabb funkció: a bejelentkezés. Alapvetően ez előtte is megtalálható az oldalon, azonban ha nem vagyunk beregisztrálva, nem tudunk
31
Szolgáltatók webshopja - ha megfelelő szolgáltatásokra vágysz Fiál Gábor János C75TIV bejelentkezni, mert nincs hozzá felhasználónév-jelszó párosunk. Itt meg kell adnunk a felhasználónevünket, jelszavunkat és azt is, hogy szolgáltatóként vagy felhasználóként jelentkezünk-e be. Természetesen aki felhasználóként regisztrált be, az nem tud bejelentkezni szolgáltatóként, és ez fordítva is igaz. Persze az adatlapon át lehet állítani a profil státuszát szolgáltatóra, de vissza már nem lehet felhasználóra. Bejelentkezés után eltűnik az előző blokk, és a jobb felső sarokban, ahol a „Bejelentkezés”, „Regisztráció”, „Elfelejtett jelszó” funkciók voltak elérhetők, ott betöltődik helyettük a „Profil” és a „Kijelentkezés”, azonban ha szolgáltatók vagyunk, akkor egy harmadik, is amely a „Szolgáltatásaim” megnevezést kapja. (19. ábra)
19. ábra Ennek megoldására létrehoztam egy session-t, ami bejelentkezéskor kap értéket. Abban az esetben, ha ennek null az értéke, akkor nem tölti be a két vagy három másik funkciót. A szolgáltatónál más módon tettem ezt meg, létrehoztam egy session változót, és ha az értéke megegyezik azzal, amit akkor kapunk, amikor szolgáltatóként lépünk be, akkor jeleníti meg nekünk a „Szolgáltatásaim” menü gombját. Arra is gondoltam, hogy mi történne, ha valaki direkt módon szeretné elérni ezt a „Szolgáltatásaim”, oldalt, miközben nincs hozzáférése, ebben az esetben hibaüzenetet kap, és visszairányítja a főoldalra. Ezt több helyen is alkalmaztam, ahol az indirekt elérés hibát okozna.
6.3.4. Adatlap Miután már tagjai vagyunk az oldalnak és be is léptünk, hozzáférésünk nyílik az adatlapunkhoz, ahol meg tudjuk nézni milyen adatokkal regisztráltunk az oldalra, bár természetesen a jelszót nem tudjuk lekérdezni. Itt lehetőségünk nyílik módosítani az adatainkat, persze nem az összeset, család és keresztnév változtatásra nincs funkció, se
32
Szolgáltatók webshopja - ha megfelelő szolgáltatásokra vágysz Fiál Gábor János C75TIV felhasználónév váltására. Abban az esetben, hogyha felhasználók vagyunk, megjelenik egy olyan gomb, hogy „Szolgáltatok”. Ennek kijelölése semmilyen kötelezettséggel nem jár, de csak ezután van lehetőségünk szolgáltatásokat feltölteni a rendszerbe. Az adatlapon megtalálható az „Adatok módosítása” funkció is, ahol bővíteni tudjuk azt a lakcímmel és telefonszámmal, aminek a szűrés feltételeknél lesz haszna. Ennek megadása mindkét szerepkörben fontos, hiszen lényeges adat, hogy hol is lenne lehetőség arra a szolgáltatásra területileg. A feleslegesen lefutott köröket rövidíti le, mert képzeljünk el egy olyan esetet, hogy találtunk egy számunkra kedvező szolgáltatást, azt megrendeljük, és kiderül, hogy az ország másik végén található és így nem lehetséges a kivitelezése. Fontos kitölteni a lakcím mezőt, mert amennyiben ezt nem tesszük meg, akkor akár megrendelőket is veszíthetünk el emiatt. Visszatérve ehhez a funkcióhoz, a házszám és az irányítószám mező csak számot fogad el. Úgy van kialakítva, hogy ha már egyszer módosítottuk az adatainkat, akkor azt betölti, de ha úgy próbáljuk átírni, hogy nem változtattunk semmilyen adaton, akkor hibaüzenetet kapunk róla, amennyiben módosítottunk és azt helyesen tettük, akkor arról is kapunk egy felugró ablakot, hogy megváltozott az adatlapunk leírása (20. ábra). Abban az esetben, ha szolgáltatók vagyunk, plusz egy adattal kibővül a profilmódosítás. Itt lehetőség van a tapasztalat beállítására, amit három opció közül választhatunk ki.
20. ábra Ezen az oldalon módunkban áll még elérni az e-mail-cím és jelszó változtatás funkciót. Egy form submit button segítségével átirányít minket egy másik felületre, ahol ezeket a funkciókat külön-külön érhetjük el. A lényeg ugyanaz mindkét felületen, meg kell adni a jelenlegi jelszavunkat és kétszer a változtatni kívánt adatot. Jelszóváltoztatásnál az újat kétszer, az e-mail-címnél szintén. Amennyiben helytelenül írtuk be jelenlegi jelszavunkat, a változás nem megy végbe. Ezek változásáról ugyancsak e-mailt kapunk, ha megváltoztak. 33
Szolgáltatók webshopja - ha megfelelő szolgáltatásokra vágysz Fiál Gábor János C75TIV
6.3.5. Szolgáltatások Miután teljesen elkészült az adatlap és a kiegészítő adatokat is beírtuk, be tudunk lépni a szolgáltatások menübe. Erre akár már előtte is lehetőség van, de célszerű minden adatot kitölteni, hogy a felhasználók pontosabb képet kapjanak rólunk. Szolgáltatóként hozzáférünk a „Szolgáltatásaim” menüponthoz, itt meg tudjuk nézni az általunk feltöltötteket. Amennyiben még nincs ilyen, ezt is tudatja velünk a rendszer. Ilyenkor alkalmunk van szolgáltatást készíteni a lenti nyomógomb segítségével. Itt meg kell adnunk több adatot is, többek között a szolgáltatás nevét, rövid leírását, hosszabb leírását, képet feltölteni hozzá, és kijelölni azt, hogy melyik kategóriába tartozik. Abban az esetben, mikor nem tallózunk hozzá képet, egy alapértelmezett kép fog megjelenni annak helyén. Viszont ha feltöltöttünk a merevlemezünkről egy kiválasztott képet, akkor az fog szerepelni mellette, amikor kilistázódik. Szerintem ez nagyon hasznos dolog, mert egy megnyerő képpel sok ügyfelet tudunk magunkhoz csábítani. Később a kategória nézetben is találunk olyan szűrűt, ami csak a képpel feltöltött szolgáltatásokat mutatja. A fájl feltöltéshez is szükség van jar fájlokra, mert alapértelmezetten nem része a NetBeans könyvtárgyűjteményének. Ugyanúgy, mint ezelőtt, itt is be kell írni őket függőségként. Meg kell adnunk az Apach Tomcat szervernek, hova töltse fel a beérkező képet. Ezt a web.xml-ben lehet megtenni a következőképpen: <description>Location to store uploaded file <param-name>file-upload <param-value> c:\Users\Gasada\Desktop\SzolgatatoWebShop\target\Szolgat atoWebShop-1.0-SNAPSHOT\pic\ Egy szervleten keresztül történik a képek feltöltése, ahol a maximális fájlméretet be kell állítani, és szervlet visszaadja a kép nevét. Majd ezt letárolom az adatbázisban, így ha ezt újra meg akarom jeleníteni, csak a nevét kell behelyettesíteni, mert minden kép ugyanott
34
Szolgáltatók webshopja - ha megfelelő szolgáltatásokra vágysz Fiál Gábor János C75TIV van eltárolva a szerveren. Tallózás után a feltöltés gomb lenyomásával már fel is tölti a tárhelyre és meg is jeleníti a fontos tudnivalókat. Fontos, hogy először a képet kell felölteni, majd utána következik az adatok kitöltése. Ha ezt nem ilyen sorrendben tesszük meg, akkor a begépelt szöveg elveszhet, vagy amennyiben nem töltjük fel a képet, nem fog hozzátartozni. A kategóriát egy legördülő listából kell kiválasztani és bejelölni, hogy hová tartozik a szolgáltatás. Ezután szükség van a többi mező kitöltésére is, különben üres adatokkal nem engedi feltölteni az új szolgáltatást. Miután már van feltöltve általunk vállalt szolgáltatás, azok az előző oldalon megjelennek egymás alatt, feltöltési sorrendben. Itt lehetőség nyílik azoknak a módosítására, törlésére. Ebben az esetben a mellette lévő radiobuttont kell bejelölni és megnyomni a „Módosítás/Törlés” funkció nyomógombját. Ezután újra a szolgáltatás feltöltés menüben találjuk magunkat azzal az eltéréssel, hogy már ki van töltve a kijelölt szolgáltatás adataival. Amennyiben nem változtatunk az adatokon, abban az esetben ezt nem engedi módosítani. Itt már lehetőség nyílik kitörölni az adott szolgáltatást, amelynek az adatai már be vannak töltve. Azt, hogy szükség esetén visszatöltse ide nekünk az adatokat, úgy oldottam meg, hogy írtam a kapcsoló fájlomban egy metódust, aminek csak a szolgáltatás kódját kell megadni, és visszaadja egy String tömbként, majd a tömb elemeit hozzáadtam az input mezők értékeihez. String adat[] = mysql.SzolgSzkod(szolgkod1); Itt az ehhez tartozó kép is megjelenik, de ennek a módosítására is van lehetőség. Ahol a szöveg hosszúsága több mint harminc karakter, ott a beíráshoz textarea-t használtam, nem pedig input mezőben text típusút, és fixre állítottam a méretét. Erre azért volt szükség, mert a tesztelés során, ha állítgattam a méretét, elcsúsztatta a weboldal fő celláit.
6.3.6. Kategória Website-omon a bal oldalon helyezkedik a leggyorsabb szűrési lehetőség, ha már konkrét szolgáltatást keresünk. Itt fel vannak sorolva egymás alatt abc-sorrendben a kategóriák, pontosan tizenegy darab, melyek a következők:
35
Szolgáltatók webshopja - ha megfelelő szolgáltatásokra vágysz Fiál Gábor János C75TIV
Állatgondozás
Egészség
Egyéb
Felújítás
Oktatás
Szakszerviz
Szállítás
Számítástechnika
Szépségápolás
Kert
Takarítás
Amint erre rákattintunk, máris átkerülünk a kategória nézetre, ahol az abba tartozó szolgáltatások kilistázódnak egymás alá névvel, tulajdonossal, rövid leírással és képpel együtt. Tovább tudjuk szűkíteni a listát a szűrők és a rendezők segítségével. A tulajdonos neve egy link, ami rávezet az adatlapjára, ahol pár fontos információt megtudhatunk róla. Olyanokat, mint a valódi neve, amennyiben megadásra került, a lakhelye, és az eléréshez szükséges e-mail-cím. A szolgáltatás nevére kattintva átirányít minket egy olyan felületre, ahol a szolgáltatás hosszabb leírása is megtalálható. Megjelenik egy „Megrendel” gomb, ami az előbb említett nézetben is megtalálható. Ha erre klikkelünk, átkerülünk egy másik felületre, ahol már csak annak a szolgáltatásnak az adatai vannak a képernyőn, amit kiválasztottunk. Itt létrehozhatunk egy üzenetet a kiválasztott munkával kapcsolatban, amit az oldal azonnal továbbít a szolgáltatónak. Erre annak is lehetősége van, aki nem regisztrált felhasználója az oldalnak. Ebben az esetben egy e-mail-cím megadására is szükség van, hogy tudjuk hol értesíteni a megrendelőt. Erről a megrendelésről e-mailt kap a megrendelő és a szolgáltató is. Az oldal tagjai a profilban beállított e-mail-címre kapnak üzenetet.
6.3.7. Megrendelés Ahogy az előzőekben leírtam, a kilistázott szolgáltatásoknál megjelenik egy „Megrendel” funkció gomb, ha erre kattintunk, átkerülünk egy másik nézetre, ahol meg tudjuk rendelni azt, amit kijelöltünk. Megrendelésünkben meg kell adnunk a szolgáltatónak, hogy mikorra, hova és pontosan mit is szeretnénk kérni tőle. Itt nyílik lehetőség a szolgáltatás anyagi vonzatának tisztázására is, vagyis árajánlatot kérhetnek az elvégzendő munkára. Nem 36
Szolgáltatók webshopja - ha megfelelő szolgáltatásokra vágysz Fiál Gábor János C75TIV regisztrált felhasználóktól a weboldal e-mail-cím megadását kéri, amire a szolgáltatóval való kapcsolattartáshoz van szükség. Ezek után egy felugró üzenetben értesít a weboldal, hogy az e-mailt elküldte mind a szolgáltatónak, mind pedig a megrendelőnek. A weboldalon keresztül ellenőrizhetjük azt is, hogy válaszolt-e már a szolgáltató a megrendelésünkre. Jobb oldalt középen található a „Megrendelések” funkció. Itt e-mailcímünk megadása szükségessé válik abban az esetben, ha nem vagyunk tagja a felhasználóknak, de ha be vagyunk jelentkezve, automatikusan kitölti ezt a mezőt és nem is kérdez rá. Itt a rendszer egymás alá listázza nekünk a megrendelt szolgáltatásainkat és a tőlünk rendelt szolgáltatásokat (persze ezt csak abban az esetben, ha a felhasználó megrendelőként és szolgáltatóként is használja az oldalt), amennyiben van ilyen. A listázást az itt található alakban hozza létre:
21. ábra Amint 21. ábrán látható, szerepel a szolgáltatás neve, megrendelés ideje, az üzenet és az arra érkezett válasz. A hozzánk benyújtott felkérésekre lehetőség nyílik válaszolni is. Az oldalon folytatott megrendelésről szóló levelezést a későbbiekben bármikor elérhetjük. Ha azonban az ügyfelek privát levelezést bonyolítanak e-mail-címükön keresztül, annak követésére már nincs lehetőség.
37
Szolgáltatók webshopja - ha megfelelő szolgáltatásokra vágysz Fiál Gábor János C75TIV
6.3.8. Keresés Az oldal középső részén helyezkedik el egy mező, ebbe kell beírni egy kulcsszót, amire rá szeretnénk keresni, ez funkció minden oldalon megtalálható. Keresőszó nélküli keresésre nem kapunk eredményt, hiszen üres mezőre nem tudunk keresni. Amennyiben helyes keresőszót adunk meg, akkor átirányít az oldal arra a pontjára, ahol kiadja a szolgáltatásokat, amelyekben a keresett kulcsszó megtalálható. Az első blokkban név alapján adja ki az egyező rekordokat, a másodikban rövid leírás alapján és harmadikban pedig a bővebb leírásban talált egyezőségeket adja ki. Amelyek között lehet válogatni szép számmal, ha már kellően nagy az adatbázisa a weboldalnak. Ezeket is meg lehet rendelni úgy, mint ahogy azt az előzőekben már leírtam.
6.3.9. Menü, Kapcsolatfelvétel Minden website-on szükség van arra, hogy a felhasználó kapcsolatba tudjon lépni az oldal üzemeltetőjével. Természetesen erre itt is van lehetőség. Az oldal közepén lévő menüsoron a fontos linkek érhetők el. Ez egy lenyíló menüsor, így mindig kéznél van az, amire szükség van, viszont nincs útban, hiszen csak akkor jelenik meg, amikor szeretnénk. Az „Információ” fül alatt a szabályzat és az „Oldal leírása” fül alatt pedig használati útmutatója található meg letölthető pdf formátumban. A „Kapcsolat” menüpont alatt pedig a rendszergazda adatai találhatóak és a „Kapcsolatfelvétel” (22. ábra). Itt el lehet érni a rendszergazdát, e-mailt küldeni számára különböző témákban. Amennyiben be vagyunk jelentkezve, nem kell megadnunk a saját e-mail-címünket.
22. ábra
38
Szolgáltatók webshopja - ha megfelelő szolgáltatásokra vágysz Fiál Gábor János C75TIV
6.3.10. Reklámfelület A honlap jobb oldalán alul egy úgynevezett reklámfelület található. Itt lehetőség van hirdetések közzétételére. A hirdetőfelületet a rendszergazda kezeli, csak vele lehetséges szerződéskötés a felületen való megjelenésre. Az oldal üzemeltetője jogosult hirdetések felvitelére, de a szerződési feltételek meghiúsulás esetén le is vehetik azokat. A hirdetni kívánók a „Kapcsolat” menüpont alatt üzenet formájában léphetnek összeköttetésbe az adminnal. Lehetőség van már kész hirdetés megjeleníttetésére, de a rendszergazda az ügyféllel való egyeztetés alapján vállalja a hirdetés elkészítését is. Ezen a felületen való megjelenésnek szabott ára van. Az ebből befolyt összegből kívánom az oldal üzemeltetését megoldani. Erre azért van szükség, mert a szolgáltató webshopban szolgáltatóként megjelenésnek nincs anyagi vonzata.
39
Szolgáltatók webshopja - ha megfelelő szolgáltatásokra vágysz Fiál Gábor János C75TIV
7.
A weboldal használatának leírása
Weboldalam felhasználására (mint az már az előzőekből is kiderül) két szerepkörben van lehetőség. Törekedtem arra, hogy mind felhasználóként, mint szolgáltatóként az oldal használta könnyű és gyors legyen. Szem előtt tartottam azt is, hogy a kezdő internetezők számára se legyen bonyolult a kezelése. Továbbiakban egy rövid leírást adok arról, hogyan kell megfelelően használni a weboldalt a két szerepkörben. 7.1.
Felhasználó szerepkör
Lehetőség van rá, hogy látogató regisztráció nélkül használja a weboldalt, de első lépésben leírom a regisztráció mikéntjét. Ez azért lehet hasznos, mert ha tagjai vagyunk az oldalnak, akkor nem kell újra meg újra begépeli az e-mail-címet amivel rendelünk. Az oldal jobb felső sarkában megtalálható egy „Regisztráció” funkció gomb. Ez átirányít a regisztrációs felületre. Itt meg kell adni a felhasználónevet, amivel később belépünk az oldalra, jelszót, keresztnevet, családnevet, e-mail-címet. Felhasználóként a szolgáltatónál a „Nem” lehetőséget kell kijelölnünk. A szabályzatot elolvasás és annak értelmezése után azt el kell fogadnunk. A felhasználónév csak az angol abc betűit fogadja el, ezenkívül a számokat és ezt két különleges karaktert a „-”, „_”. A jelszó szintén ezeket a karakterek fogadja el azzal az eltéréssel, hogy annak hat tag hosszúnak kell lennie legalább. A megadott nicknév minimum három karaktert kell hogy tartalmazzon. Az e-mail-címet és a jelszót kétszer kell megismételni az elgépelés elkerülése végett, ha mégis elhibáztuk és nem tudjuk megoldani a problémát, a hiba megoldására csak a rendszergazda segítségével van lehetőség, és az időbe telhet. Ha hibát vétünk a regisztráció során, akkor arról egy felugró hibaüzenet értesít minket. Amennyiben mindent jól töltöttünk ki, a sikeres tagság megszerzésről szintén felugró ablak értesít, majd átirányít minket a főoldalra. Ezzel a regisztráció elkészült. Amennyiben nem tettük meg az előzőeket, a következő opciókat nem fogjuk tudni elérni. A jobb felső sarokban van két üres mező, oda be kell gépelni a felhasználónevet és jelszót, amivel az előbb beregisztráltunk. Itt két opció közül kiválasztjuk a „Felhasználó”-t és a bejelentkezésre kattintva belépünk az oldalra. Abban ez esetben, ha ez nem sikerült, akkor szükség lehet az „Elfelejtett jelszó” funkcióra. Ott meg kell adnunk a felhasználó nevet vagy e-mail-címet és egy új jelszót kapunk e-mailben.
40
Szolgáltatók webshopja - ha megfelelő szolgáltatásokra vágysz Fiál Gábor János C75TIV Sikereses belépés esetén előkerül két másik gomb: Profilom, Kijelentkezés. Az utóbbi egyértelmű, hogy a kilépéshez szükséges. Az előbbi pedig a felhasználó adatlapja, ahol meg lehet tekinteni a saját adatainkat, amelyekkel regisztráltunk. Ezek kibővítésére is van lehetőség, megadhatjuk lakhelyünket és elérhetőségünket, vagy amennyiben mégis szolgáltatók akarunk lenni, itt van lehetőség átállítani a fiók státuszát szolgáltatóra. A későbbiekben leírom, miért hasznos ez. Amikor módosítjuk az adatlapot és lakcímmel is bővítjük, irányítószámnak és házszámnak csak számot lehet megadni. Az adatlapon keresztül még módosítani lehet a jelszót és az e-mail-címet is itt is duplán kell adni az újat, hiszen az elgépelés veszélye továbbra is fennáll. Fontos a jelenlegi jelszó megadása is, nehogy valaki illetéktelenül módosítsa fiókunkat, miközben egy nyilvános helyen bejelentkezve hagytuk. Innentől kezdve nincs szükség regisztrációra, anélkül is használható a felület. A legegyszerűbb szűrés, ha egy adott kategóriára kattintunk a bal szélen, és ezután kilistázódnak egymás alá az ide tartozó szolgáltatások. Itt lehetőség van további szűrésre és rendezésre is. Ebben az esetben szolgáltatások felett kiválasztjuk a szűrés feltételeit, akár többet is, és a gomb segítségével máris csak a megfelelőek vannak a listában. Részletesebb „Keresés” funkció gomb (a menü mellett jobbra) a begépelt keresőszóra való illeszkedéseket adja ki. Amennyiben van, ami felkeltette az érdeklődésünket, a nevére kattintva megláthatjuk a szolgáltatás bővebb leírását, vagy ha kíváncsiak vagyunk a szolgáltatóra, aki feltöltötte, a nevére kattintva is megtekinthetjük az adatlapját. Ha elnyerte tetszésünket a szolgáltatás, akkora a „Megrendel” gombra való kattintással egy új oldalon találjuk magunkat, ahol egy üzenetet kell írni, vagy ha nem vagyunk bejelentkezve, akkor egy e-mail-címet is meg kell adni. A bejelentkezési fül alatt található meg a „Megrendelések” funkció. Itt belépett státuszban azonnal kiíródnak az általunk megrendelt szolgáltatások, és meg tudjuk nézni, válaszolt e már a szolgáltató. Abban az esetben, ha nincs belépve a használó, azt az e-mail-címet kell megadnia, amire a szolgáltató válaszát várja. A rendszergazda eléréséhez ki kell választani a menüből a Kapcsolat->Kapcsolatfelvétel funkciót, és ezen keresztül üzenetet lehet küldeni neki.
41
Szolgáltatók webshopja - ha megfelelő szolgáltatásokra vágysz Fiál Gábor János C75TIV 7.2.
Szolgáltató szerepkör
Szolgáltatóként minden funkcióhoz hozzá tudunk férni, amihez a felhasználó is jogosult. Kötelező a regisztráció. Ennek menete ugyanaz, mint a felhasználói szerepkörben már leírtak, kivéve, hogy regisztráció során a szolgáltatónál az „Igen”-t kell bejelölni. Erre azért van szükség, mert csak akkor jelenik meg a jobb felső sarokban a „Szolgáltatásaim” funkció. Bejelentkezés során a kiválasztható opciók közül a szolgáltatót kell kiválasztani. Ekkor kilistázódnak a már feltöltött szolgáltatások, és lehetőség van újat is létrehozni. Amennyiben képet is szeretne hozzárendelni, először azt tallózza be a merevlemezéről és töltse fel, mert ha az adatokat tölti ki először, azok elveszhetnek, és újra ki kell majd töltenie. Képet hasznos hozzáadni a szolgáltatásunkhoz, hiszen ez megnyerő lehet a megrendelők számára, és az oldalon lévő szűrők segítségével ki is szűrhetik a kép nélkülieket a listából. Szükség van a kategória kiválasztására, amelyikbe hirdetés beleillik, és az összes mező kitöltése kötelező. Természetesen lehetőség van a már feltöltött szolgáltatásokat módosítani vagy törölni. Ehhez a mellette lévő kis karikába kell kattintani, majd a „Módosítás/Törlés” funkciót kiválasztani. Amennyiben törölni szeretnénk ezen az oldalon, a törlés gombot kell megnyomni, ha módosítani szeretne végrehajtani, akkor meg kell változtatni valamelyik mező értékét és a módosítás funkciót kell használni. Abban az esetben, ha képet módosítottuk, a legalsó kis karikát be kell jelölni. Ezek után már nincs más dolgunk, mint várni arra, hogy valaki megrendelje egy szolgáltatásunkat. Az oldal is értesít minket arról, ha valaki érdeklődik hirdetésünk iránt. Ezt a „Megrendelések” menüpont alatt tekinthetjük meg, de e-mail is kapunk róla. Erre lehetőség van válaszolni. Ha szolgáltatóként valamilyen problémája van az oldal működésével vagy használatával, akár javításra van szükség, amit saját maga nem tud megoldani, akkor a rendszergazdával a „Kapcsolatfelvétel” menüpont alatt tud kontaktust teremteni.
42
Szolgáltatók webshopja - ha megfelelő szolgáltatásokra vágysz Fiál Gábor János C75TIV
8.
Biztonságtechnika
A weboldalon nagy hangsúlyt kell fektetni a biztonságra, ezért a következőképpen oldottam meg néhány biztonságtechnikai kérdést. A jelszó érvényessége csak abban az esetben megengedett, ha 6 és 20 karakter között van, és az az angol abc kis és nagy betűit tartalmazza. Ennek tárolása az adatbázisban hashkód és egy „salt” segítségével történik meg, így ha hozzá is férne a támadó az adatbázisban tárolt jelszavakhoz, azt nem tudja értelmezni, mert visszafejthetetlen a tárolási módszer és a „salt” kulcsszó nélkül. Problémát okozott a weboldalon az is, ha valamelyik input mezőbe HTML el taget direkt módon illesztettünk be, de a hibát megoldottam azzal, hogy amennyiben ilyen "<", ">", "/" karakter van a mezőben, azt kivágja. Következő hibaforrás volt a „Megrendelések” funkció alatt található felületen az e-mailcím mező. Itt amikor nem volt bejelentkezve a felhasználó, megadhatja az e-mail-címét és ebben az esetben kiadja az általa megrendelt szolgáltatásokat. Azonban ebben volt egy hibaforrás, ugyanis ha megadtuk a felhasználó vagy szolgáltató nicknevét, akkor is kilistázta az őhozzá tartozóakat. Az adatbázisban úgy menti le egy megrendelés tulajdonosát, hogy felhasználónevét vagy a nem bejelentkezett módban megadott e-mailcímet írja ide. Ennek a megoldására alkalmaztam azt, hogy csak e-mail-címet fogad el a „Megrendelések” felületen az input mező, ha nincs bejelentkezve felhasználó. Az oldal egyes részeinek a jogosulatlan hozzáférését vagy az indirekt hozzáférését muszáj volt levédeni. Erre azért volt szükség, mert ha egy kijelentkezett szolgáltató el akarja érni direkt módon a szolgáltatásait, ez hibát okozna a programban, ezért ebben az esetben egy hibaüzenet dobódik és visszairányítja főoldalra. Ezt úgy oldottam meg, hogy amennyiben a munkamenet nulla, akkor ez történik. Problémát jelentett még az is, hogy ha a felhasználó egy olyan website területre szeretne hozzáférni direkt módon, ahol szükség lenne egy bizonyos változó értékére, akkor itt is hibaüzenet jön elő, majd megtörténik az átirányítás.
43
Szolgáltatók webshopja - ha megfelelő szolgáltatásokra vágysz Fiál Gábor János C75TIV
9.
Irodalom jegyzék
[1] Móricz Attila: Programozási alapfeladatok WAP-oldalakhoz és weblapokhoz ComputerBooks Budapest, 2003 [2] Nagy Gusztáv: Web programozás alapismeretek - Ad Librum Kiadó Budapest, 2011 [3] Eric A. Meyer: CSS Zsebkönyv Webtartalmak formázása stíluslapokkal - Kiskapu Kft Budapest, 2006 [4] Szűcs Miklós: Adatbázis rendszerek II. Oracle-JDBC elektronikus jegyzet, forrás: http://users.iit.uni-miskolc.hu/~szucs/ab2/oa/1508_Oracle_JDBC.pdf (2015.04.02.) [5] John L. Viescas - Michael J. Hernandez: SQL·lekérdezések földi halandóknak Gyakorlati útmutató az SOL nyelvű adatkezeléshez - Kiskapu Kft. Budapest, 2009 [6] Kozmajer Viktor - PHP és MySQL az alapoktól - BBS-INFO Kiadó, 2011 [7] facelift.blog.hu Reklámblog http://facelift.blog.hu/2011/03/19/mitol_mukodik_egy_logo (2015.05.03) [8] Wikipédia - hu.wikipedia.org (2015.04. 16.) [9] Chipland - http://www.chipland.hu/ (2014. 04. 11.) [10] Laptop.hu - http://www.laptop.hu/ (2014. 04. 11.) [11] Praktiker - http://www.praktikerwebshop.hu/ (2014. 04. 11.)
Programok, amelyek segítségével dolgoztam DIA: Szervezeti ábrák, folyamatábrák, és diagramok készítéséhez használható ingyenes program. ER modellt készítettem vele. Microsoft Office Word 2007: Szövegszerkesztő program. NetBeans IDE 8.0.2: Fejlesztő program. Paint: Rajzoló program, a képeket ezzel szerkesztettem meg. XAMPP: A lokális adatbázisom kezelésére használom. Firefox: Böngésző, amivel teszteltem a weboldalt. Microsoft Office Excel 2007: táblázatkezelő, Reláció adatbázishoz létrehozásában volt hasznos.
44
Szolgáltatók webshopja - ha megfelelő szolgáltatásokra vágysz Fiál Gábor János C75TIV
10.
Összefoglalás
Szakdolgozatom témájaként egy szolgáltató webshop létrehozását választottam. Azért esett erre a választásom, mert az interneten keresgélve rájöttem, hogy ilyen szolgáltatás még nincs a piacon. A tervezés kezdetén három weboldal összehasonlítását végeztem el, ahonnan kiszűrtem azokat az elemeket, amelyeket én is alkalmazni szeretnék, és azokat az elemeket, amelyek használatát el kívánom kerülni. A tervezéshez a Dia ER modellkészítő felületét használtam. A fejlesztéshez NetBeans segítségét vettem igénybe, ahol Java környezetbe ágyaztam be HTML, JavaScript kódot, és formokon keresztül servleteknek adtam át a használatban lévő adatokat. A folyamat során megterveztem a webshop logóját, és nagy gondot fordítottam az oldal arculatának kialakítására is. Webáruházam egy normál webshop mintájára működik, csak itt az árucikkek vásárlása helyett szolgáltatások megrendelésére van lehetőség. Az oldalt két szerepkörben van lehetőség használni. Keresgélhetünk a honlapon, mint az oldal tagja vagy mint nem regisztrált felhasználó, de egy előzetes regisztráció után magunk is tölthetünk fel szolgáltatásokat. Az ügyfelek közötti kapcsolattartás a webshopon keresztül is lehetséges megrendelés üzenete és válasza formájában vagy privát e-mail-váltással egy levelező oldal segítségével. Probléma esetén lehetőség van rendszergazda megkeresésére is, üzenet formájában. Az oldal működésének segítésére többféle keresési, szűrési lehetőséget alkalmaztam. Próbáltam a webshopot úgy létrehozni, hogy kezelés egyszerű és mindenki számára könnyen kivitelezhető legyen. Tervezési munkám során azt tapasztaltam, hogy az interneten nagyon sok olyan website található, melynek felülete nem felhasználóbarát, túlzsúfolt, nagyon sok színt alkalmaz, ezt próbáltam a készítés során kiküszöbölni. A fejlesztés alatt az adott problémák megoldásával bővültek az ismereteim a Java nyelvel kapcsolatban. Weboldalam továbbfejlesztési lehetőségének látom, ha szolgáltatások listázásánál több mint tíz jelenik, meg akkor lapozható legyen. Megoldást kell találni arra, hogy az ő és ű karakterek helyesen legyenek letárolva. Hozzászólások beiktatása a szolgáltatásokhoz, vélemény és értékelési funkció a szolgáltatókról.
45
Szolgáltatók webshopja - ha megfelelő szolgáltatásokra vágysz Fiál Gábor János C75TIV
11.
Summary
I chose the creation of a webshop service provider as the subject of my thesis. I preferred this, because during my research on the internet I realized that there is nothing like this on the market yet. I compared three web pages at the beginning of the design to detect the elements which I would also like to apply and which I would like to avoid. I utilized the model builder interface of the Dia ER for the designing. I used the help of the NetBeans software to insert HTML, JavaScript codes to Java environment at the development phase and I gave the data in use to servlets though forms. In the progress I designed the logo of the webshop and great care has been taken to establish the image of the page as well. My webshop operates along the lines of a standard webshop, but instead of buying goods, here it is possible to order services. It is possible to use the web page in two rules. We can seek the website as a member of it, or as an unregistered user, but after the registration we also may be able to put services up. Communications between customers is allowed though the website by the order and replies, or in a form of private email addresses. In case of any problems, you can also request the aid of an administrator in the form of a message. I used various search and filtering options to facilitate the operation of the site. I tried to create a webshop that is simple to use and easy to implement for everyone. During my work I realized, that on the Internet lot of similar sites are not user-friendly, really crowded, using too much color, I tried to avoid these. During development I expended my knowledge about the Java in resolving the upcoming problems. As a development opportunity it would be good if the websites could be paged, if more than ten services are listed in one page. A solution must be found to store correctly the letters of “ő” and “ű”. It would be good to add a comments section to the services, and to add review and assessment functions of the service providers.