ugrás a tartalomhoz

adatbázison alapuló weboldal létrehozása

kedi12 · 2012. Aug. 28. (K), 15.09
Sziasztok!

Adatbázis alapú weblapra van szükségem, ehhez pedig szakemberre, mert programozni nem tudok (a weblapomat megpróbáltam egyedül megcsinálni, átlagos felhasználói szintű számítástechnikai ismeretekkel, de csak egy statikus weblapig jutottam), ám mielőtt elkezdenék árajánlatokat kérni weblapkészítőktől, néhány alapvető dolgot szeretnék tudni, hogy tudjam miről beszélek :)

A leendő weblapomon a felhasználók regisztrálhatják magukat, adatlapjuk lesz és az adatoknak kereshetőeknek kell lenniük (Keresés gomb).

Bocsánat, ha butaságokat kérdezek, de fogalmam sincs az adatbázisok működéséről...

1) Ha valaki regisztrál (regisztrációs űrlap az oldalon), az adatai bekerülnek maguktól az adatbázisba? Az adatlap tud magától generálódni? Tehát, ha új tag regisztrál, akkor nekem vagy szakembernek kell valamit csinálnia, hogy az adatok bekerüljenek az adatbázisba és a felhasználónak legyen adatlapja? Ehhez kell programozni vagy én is meg tudom csinálni, amit kell, ha képes vagyok használni a weblap-készítő programot (mint pl. a Dreamweaver-t Design Wiew-ben, mert a html-kódokhoz sem értek)?

2.) Az ilyen típusú oldalak karbantartása egyébként hogyan működik? A tulajdonos fizet havi x összeget a weboldal készítőjének vagy akkor fordul hozzá, ha konkrét problémája van vagy segítségre van szüksége? Üzemeltethető egy ilyen, adatbázis alapú weboldal folyamatos programozói háttér nélkül?

3.) Van annak értelme, hogy költséghatékonyság céljából én megcsinálom a weboldalt egy ingyenes programmal vagy Dreamweaverrel (az van) és a szakember "mögé teszi" az adatbázist? Vagy eleve úgy kell kezdeni a weboldalt, hogy vele egyszerre építik mögé az adatbázist? Úgy rémlik, hogy az elején válaszani kell, hogy statikus vagy dinamikus legyen, de a "dinamikusságot" figyelmen kívül lehet hagyni egy ideig? Azaz, lehet létező weboldal mögé utólag adatbázist rakni? Mert a weblapot még csak megcsinálom, de adatbázist meg regisztrációt nem tudok csinálni.

Köszönöm...
 
1

Válaszaim

Hidvégi Gábor · 2012. Aug. 28. (K), 15.32
1, programozni kell, hogy az adatok bekerülhessenek az adatbázisba; szerintem mindenképp fordulj szakemberhez, hogy ezt elvégezze, mert ő tisztában van a technológiával, azzal, hogy mire kell figyelni, és mik a buktatók

2, attól függ: ha nagy az oldal és sok a karbantartási munka, akkor érdemes havi fix összegben megállapodni, kisebb projekt esetén pedig lehet úgy is, hogy ha összegyűlt X forintnyi munka, akkor egyben

Az oldal üzemelhet programozói háttér nélkül, de ez általában nem jellemző, mindig elő szokott kerülni egy-egy kisebb hiba, leállás, egy böngésző nem úgy jeleníti meg az oldalt ahogy szeretnéd stb. Persze egy jól megírt rendszer esetén ezek elenyészőek, de vannak. Emellett érdemes fejlesztéseket is végezni, ha megy a szekér.

3, lásd 1,-es pont, szerintem te inkább foglalkozz az üzleti részével, amihez értesz, a szakember gyorsabban és így olcsóbban végezheti el ugyanazt a munkát; tapasztalataim szerint nem érdemes statikus oldalt készíteni, mert egyre macerásabb a módosításokat elvégezni
2

Köszönöm a gyors választ. De

kedi12 · 2012. Aug. 28. (K), 18.39
Köszönöm a gyors választ.
De ha minden új regisztráló miatt programozni kell, akkor felmerül egy kérdés: mivel a weblap több nyelvű lesz, mivan, ha valaki pl. olaszul regisztrál az olasz űrlapra, így olasz adatlap kell neki, amire olaszul (is) lehet keresni, de a programozó nem tud olaszul. Én tudok, de azzal mire megy a programozó. Sőt, ennél különösebb nyelvek is előkerülhetnek idővel, ha tényleg beindulna dolog (de jó lenne...). Vagy a programozónak elég tudni, hogy az angol vagy magyar változatban melyik sor minek felelt meg? Mint amikor a városi legenda szerint informatikusok nyelvtudás nélkül is át tudnak állítani dolgokat, mert fejből tudják mi hol van az adott rendszerben? Mit csinál pl. a Facebook? Nyelv, adatbázis és keresés szempontjából az én oldalam is olyan lenne, csak nem közösségi oldal, a tagok nem barátkoznak, nem "keverednek", de az adatlapjukra több nyelven is lehet (lehessen) keresni és több nyelven is elérhető lesz (ahány nyelven ők maguk regisztrálnak). Lehet, hogy ez buta kérdés volt, a Facebooknak nyilván van pénze minden nyelvű programozóra... Megoldható úgy, hogy a programozó nem érti az adott nyelvet (de legalább én igen)?
3

Ahhoz, hogy amit a

hunkris · 2012. Aug. 28. (K), 18.55
Amit a felhasználó olaszul látja az oldalt, attól a rendszernek még nem olasznak kell lennie. Tehát magyarul/angolul beprogramozza, és amit a felhasználó felé küldünk információt, azt alakítjuk át olasszá. Megoldható.
5

OK, köszi. Nem értem, de nem

kedi12 · 2012. Aug. 28. (K), 19.52
OK, köszi. Nem értem, de nem baj, lényeg, hogy megoldható, elég, ha a szakember érti :)
4

más nyelv

Poetro · 2012. Aug. 28. (K), 19.52
Én se tudok se kínaiul se héberül. Az oldal, amit fejlesztek mégis elérhető több tucat nyelven a fentieken kívül. Szóval ennek nem kellene szempontnak lennie.
6

Kicsit talán pontosabban

Pepita · 2012. Aug. 29. (Sze), 05.06
Bocsánat, ha butaságokat kérdezek, ...
Szerintem nem kérdeztél butaságokat, és mi is azt kérdezzük meg, amiben még kevés a tudásunk - így duplán felesleges bocsánatot kérned érte.

1.: Itt volt egy kis félreértés közted és Gábor között:
De ha minden új regisztráló miatt programozni kell, akkor...
Nem (feltétlenül) kell regisztrációnként programozni. Próbáld meg vhogy így elképzelni a dolgot:

Adatbázis: olyan "láthatatlan" valami, amibe valamilyen úton-módon adatokat teszünk és veszünk ki belőle. Pl. a felhasználók adatait, egyéb (akár HTML) tartalmakat.

Program: az a szintén láthatatlan vmi, ami megvalósítja az előbbi "úton-módon"-t, például: mikor a felhasználó kitölti az űrlapot és klattyol a "Beküld" gombra, akkor elindul, "elolvassa" az űrlapot, leellenőrzi a benne szereplő adatokat és ha megfelelnek, akkor beírja az adatbázisba. A keresés is ilyesmi, ott is pl. egy űrlapon "jön" a keresendő szó, ezt a program "megnézi" az adatbázisban és az eredmény függvényében kiír valamit a kimenetre. Ezeket a programrészeket funkcióknak is szoktuk nevezni, a teljes szoftver nagyjából ilyen funkciók gyűjteménye. Ezek többségét előre le lehet (kell) programozni, a szoftveren akkor kell változtatni, ha a funkció korábbi működésén kell vmi okból változtatni. A legjobb esetben erre csak továbbfejlesztés miatt kerül sor, de többnyire előfordulnak kisebb-nagyobb hibák is, amire a programozó és/vagy a megrendelő nem gondolt előre. Tehát az adatok kvázi automatikusan, de nem maguktól kerülnek az adatbázisba, hanem az előre kifejlesztett szoftver révén.

Kimenet: az a - nagyon is látható - tartalom (HTML), amit kiküldünk (a program) a látogató böngészőjének. Amikor te statikus HTML "fájlt" készítesz, akkor is egy kérés megy a szerverre (többnyire URL-ben pl. egy domain), amire válaszként a szerver elküldi ennek a fájlnak a tartalmát. Dinamikus honlap esetén ezt a HTML tartalmat a program állítja elő, ezért (is) nincs különösebb értelme statikus oldalakat készítened, a programozónak azokkal is lesz dolga, nem sok költséget takarítasz meg vele. (És ha rosszul sikerül a statikus tartalom, a végén még drágább is lehet miatta.)

2:
Üzemeltethető egy ilyen, adatbázis alapú weboldal folyamatos programozói háttér nélkül?
Elvileg igen, bár konkrét példát én nem tudnék erre mondani. Bár a "folyamatos"-t inkább "rendszeres"-nek mondanám. Ahhoz, hogy működés közben szinte soha se kelljen programozóhoz fordulj az kell, hogy az összes rendszeres karbantartást (adatbázis-mentés, stb.) el tudd végezni magad. Ehhez pedig olyan felhasználói felületre (szoftverre) van szükség, ami kezeléséhez a te hozzáértésed elegendő. Ez nyilván az indulási fejlesztési költségeket emeli, neked kell tudnod, mi éri meg jobban neked. De ha pl. elszáll az adatbázisszerver, akkor a mentésből visszaállítás mindenképp fejlesztői feladat. És ahogy Gábor is írta: érdemes fejleszteni is, hogy "ne unják meg" a felhasználók.

3: Kb. semmi értelme (l. fentebb), bár, ha jól "össze tudsz dolgozni" a programozóval, akkor esetleg meg lehet csinálni a frontend-et a te HTML-edből. Hoppá, most néztem vissza: "html-kódokhoz sem értek", így kizárt, hogy ez jó ötlet lenne.

A többnyelvűség érdekes téma, a programozónak nem kell tudnia az adott nyelven (sok is lenne az már nekünk az 5-10 program- és leíró nyelven kívül), de azért a "csapatból" valakinek nem árt (pl. neked). Webszerveren működő fordítóprogramról pl. a Google-ról tudok, mivel az is messze van a tökéletestől és rendkívül sokba kerülne még hasonlót is íratni - ezek miatt célszerű a többnyelvű tartalmakat nyelvenként tárolni az adatbázisban. Az pedig az adott tartalom és a működés függvénye, hogy mikor és ki által kerül oda.

Egyébként mi a honlap célja? Milyen szolgáltatás(oka)t nyújt? Az üzemeltető (Te) mivel foglalkozik?
(Ezek nálam elsődleges kérdések egy honlap kapcsán.)
7

Hűűűű...ez hosszú volt, de

kedi12 · 2012. Aug. 29. (Sze), 14.34
Hűűűű...ez hosszú volt, de nagyon részletes, köszönöm :)
Én is hosszú leszek, azt hiszem...

A számítástechnikához nem igazán értek, ahogy ez látható is, kb. átlag felhasználóként (ECDL tervben van már évek óta, kiváncsiságból Dreamweaver-tanfolyamra jártam ezer éve). Nyelvtanár vagyok. Ami a weblapot illeti, lényegében marketinggel foglalkoznék.

A weblap szakmai adatbázis lenne, erről pontosabbat így nyilvánosan most inkább nem írnék :) Nem korlátozódna Magyarországra, ezért lenne többnyelvű. A főbb európai nyelveken legalább alapfokon értek (ha valamit mégsem, akkor szótár:)), több nyelven beszélek is és egy sok nyelvet beszélő barátom néha bedolgozna, ha mégis kell. Szóval a nyelv nem lesz gond az én szempontomból. Ha a programozóéból sem, akkor minden rendben.

Eredetileg mindent egyedül akartam csinálni, legalábbis az elején, költségkímélő szempontból, amíg ki nem derül, hogy lesz-e egyáltalán valami a dologból. Úgy gondoltam, ha megtanulom az alapokat, eleinte megleszek egyedül is. Statikus weblappal még csak meglennék (ha a felhasználók emailben elküldik az adataikat kézzel megcsinálhatom az adatlapjukat, ami aztán link lenne, így elérhető, ez hosszútávon nyilván butaság és kezelhetetlen, rövidtávon talán működhetne, amíg be nem indul).
De közben rájöttem, hogy ahhoz, hogy a weblap igazán jó, használható és felhasználóbarát legyen, mindenképp dinamikus weblap kell, kereshető adatbázis, ahhoz meg programozó.
A weblapot mostmár mindenképp szakember fogja megcsinálni, itt-ott rákérdeztem, azt hittem, egy dinamikus weblap elkészíttetése kb. megfizethetetlen egy átlagembernek, de úgy tűnik nem.

Ezért is érdekel, anyagi szempontból, hogy mennyire kell nekem a weblap elkészítése után is a programozó, főleg eleinte.
Az rendben van, hogy olyan értelemben kell továbbra is, hogy ránéz, ha baj van vagy változtat valamin ha kell/szeretném, ez nem gond. A "rendszeresen" az jó, én a "folyamatos" , napi elfoglaltság miatt aggódom, ha pl. minden regisztrációt kézzel kell felvinni az adatbázisba. Jól értem, amit írtál, hogy nem kell?

Alapvetően azt nem értem, hogy mi történik az adatokkal, amiket valaki bepötyög a regisztrációs űrlapba. Úgy gondolom, hogy valamilyen, számomra relytélyes módon bekerülnek az adatbázisba. Hogy hogyan, azt nekem nem is kell feltétlenül értenem.
Bekerülnek maguktól, automatikusan? Tehát nem kell a programozónak napi szinten azzal foglalkoznia, hogy "nézzük csak regisztrált-e ma valaki, ó igen, akkor tegyük csak be őt is az adatbázisba, mert amíg nem tesszük be, addig olyan, mintha nem is regisztrált volna"?

Adatlapjuk hogyan lesz? Azt is csinál a szoftver az adatbázis alapján (az adatlap mezői gondolom megegyezhetnek az adatbázis táblázatának mezőivel, nem lesz túl sok adat/mező) vagy azt tényleg darabonként kell megcsinálni?

Köszönöm... :)
8

Bekerülnek maguktól,

Poetro · 2012. Aug. 29. (Sze), 15.53
Bekerülnek maguktól, automatikusan? Tehát nem kell a programozónak napi szinten azzal foglalkoznia, hogy "nézzük csak regisztrált-e ma valaki, ó igen, akkor tegyük csak be őt is az adatbázisba, mert amíg nem tesszük be, addig olyan, mintha nem is regisztrált volna"?

Igen. A programozó megírja a programot, hogy amikor az űrlapot elküldik, és azzal minden rendben, akkor beírja az adatokat az adatbázisba, onnantól kezdve az benne van, kereshető stb.

Adatlapjuk hogyan lesz? Azt is csinál a szoftver az adatbázis alapján (az adatlap mezői gondolom megegyezhetnek az adatbázis táblázatának mezőivel, nem lesz túl sok adat/mező)

Az adatbázis alapján létre lehet hozni egy adatlapot a felhasználóról. Ez tartalmazhatja csak az adatbázisban levő mezőket, vagy az azokból származtatható adatokat. Például a felhasználó beírta a születési dátumát, ebből ki tudjuk írni a korát is (a születési dátuma mellett természetesen). Vagy megadta a vezeték és keresztnevét, ebből ki tudjuk írni a teljes nevét (akár nyelvtől függő sorrendben).
9

Köszönöm, szuper. Közben

kedi12 · 2012. Aug. 29. (Sze), 18.16
Köszönöm, szuper. Közben végiggondoltam, hogy így kellene lennie, mert gondolom, a Facebook vagy a LinkedIn is ezen az elven működhet, az adatlap rögtön megjelenik, létezik, módosítható is akár, rögtön regisztráció után. Annak ellenére, hogy egyszerre akár nagyon sokan is regisztrálnak ilyen forgalmú helyekre. Ez nem lenne lehetséges, ha emberek töltögetnék az adatbázist a háttérben, mert az időbe telne, nem lenne kész azonnal az adatlap.
10

Megelőzött

Pepita · 2012. Aug. 30. (Cs), 01.37
Mostanában éjszakai bogár vagyok, Poetro megelőzött a válasszal, de így rövid, ámde pontos választ kaptál. (És bocs a korábbi szószátyárságomért.)

erről pontosabbat így nyilvánosan most inkább nem írnék
Ha gondolod, megteheted privát is, érdekel a téma. (Itt részemről is ennyi.)
11

1.)Nem tudom mennyire vagy

inf · 2012. Szep. 6. (Cs), 01.42
1.)
Nem tudom mennyire vagy otthon excelben. Ha nem vágod, hogy mi az, akkor képzelj el egy papírlapot, és hogy arra szépen behúzol függőleges meg vízszintes vonalakat. A függőleges vonalak mentén alakulnak ki az oszlopok, a vízszintes vonalak mentén meg a sorok. Ezt nevezik táblázatnak. Minden oszlop valamilyen tulajdonságot jelképez, pl a felhasználó neve, email címe, jelszava, stb... Minden sor egy felhasználót jelképez, pl az egyik a Kovács Pisti a másik meg a Golyvás Irén. :D Onnan tudod, hogy melyik melyik, hogy mondjuk megnézed, hogy az adott sorban mi van kitöltve a név oszlopban... Na az excel ugyanezt tudja, csak nem papírral és ceruzával...
Az adatbázis (legalábbis a relációs) ugyanígy táblákból áll, és ugyanígy sorok meg oszlopok vannak benne. Amikor valaki regisztrál az oldalon, akkor csinálhatod azt, hogy egész nap a gép előtt ülsz, és figyeled a http kéréseket, amiket a felhasználók küldenek, és ha valaki egy regisztrációs űrlapot küld, akkor fogod, kiszeded belőle az adatokat, és szépen kézzel felviszed a táblázatodba. Ugyanígy, ha valaki egy bejelentkezési űrlapot küld, akkor fogod, megkeresed a táblázatodban, hogy stimmel e az email címhez tartozó jelszó, és ha igen, akkor adsz neki egy sorszámot, és te megjegyzed, hogy az adott sorszámhoz ki tartozik. Így később, amikor valamit kér tőled az oldalon keresztül már elég csak a sorszámot felmutatnia, nem kell újra megadnia az email címét és a jelszavát, és te a sorszám alapján meg tudod majd mondani, hogy ő kicsoda, és mihez van joga az oldalon, és mihez nincs, és ennek megfelelően kezeled a kéréseit. Ezt hívják munkamenet kezelésnek. Ezeken kívül még rengeteg dolgot lehet adatbázis táblákban tárolni, pl cikkeket, ha egy blogról vagy híroldalról van szó, termékeket és kategóriákat, ha egy webshop-ról, kutyák, macskák neveit, ha egy sintértelepről van szó, és még sorolhatnám... Gyakorlatilag mindent...

Nyilván neked nincs időd arra, hogy állandóan a gép előtt ülj, és figyeld, hogy ki milyen kéréseket küld az oldaladnak, és válaszolgass neki, ezért találták ki a programokat. Ők olyanok, hogy a fent leírtakat elvégzik helyetted. A programok körülbelül úgy működnek, hogy a programozó megmondja nekik, hogy egy adott szituációban mit kell csinálniuk, és ők pontosan azt teszik, amit mondtak nekik. Ha azt mondják, hogy regisztrációs kérés érkezésekor töröljék a teljes adatbázist, akkor kérdés nélkül törlik. Szóval ők nem értékelnek, csak parancsot hajtanak végre. Azt, hogy melyik szituációban milyen parancsot hajtsanak végre a programozónak kell megtanítani nekik. Valahol olyan ez, mint egy gyerek, sok időt kell eltölteni vele, hogy mindenre megtanítsd, és ezért ennek nyilván ára is van.

3.)
Egy weboldalnál valamivel komplexebb a dolog, mert azzal nem csak programozók foglalkoznak, hanem 3 szakma keveredik: design, sitebuild, programozás. A designer az elképzeléseid alapján megtervezi, hogy hogyan nézzen ki az oldalad, és ezt megvalósítja valamilyen kép formátumban. A sitebuilder ezt a képet feldarabolja, és alá tesz egy HTML vázat, amit már fel lehet tölteni például szöveges tartalommal. A programozó pedig ír egy programot, ami ténylegesen fel is tölti a HTML vázat tartalommal attól függően, hogy éppen milyen kérést küldtek az oldalnak. Mindhárom elég komoly szakma. Ha valami nagyon sablonosat és egyszerűt akarsz, akkor a designer és talán-talán a sitebuilder megspórolható. Mondjuk ilyen esetben is jobb, ha egy létező sablont töltesz le, vagy veszel meg valahonnan, minthogy te kezdjél el dreamveawer-ben összerakni dolgokat. Sokkal kevesebb energiát kell ráfordítanod úgy, és a programozónak is kevesebb fejfájást okozol. Szóval igen, el lehet kezdeni statikus HTML-el is csinálni, és később is lehet beletenni funkciókat, ha szükség van rá.

2.)
Az üzemeltetést a hostingot adó cég végzi, a karbantartást meg a programozó... A legtöbb oldal gond nélkül elmegy egy darabig anélkül, hogy a programozó ránézne, neki csak akkor kell hozzányúlnia, ha valamit módosítani kell, vagy változott a környezet, amiben a program fut. Bizonyos időközönként érdemes biztonsági mentést csinálni az adatbázisról. Ha kis forgalmú oldalról van szó, akkor ezt akár te is megcsinálhatod, ha megtanítják, hogy hogyan kell. Ha valami hiba előkerül az oldallal kapcsolatban, vagy valami új ötleted van, amit szeretnél megvalósítani, akkor meg kell bízni egy programozót. Az, hogy te hogyan fizeted ki ezekért a munkákért tényleg csak attól függ, hogy hogyan állapodtok meg egymással. Pl előfordulhat akár olyan is, hogy garanciát adnak a kódra, és bizonyos ideig ingyen javítják az esetleges hibákat. Vagy olyan is, hogy minden kis ötletedre egyesével szerződtök, vagy akár olyan is, hogy összegyűjtesz egy csokor ötletet, amit bele kéne fejleszteni az oldalba, és úgy állapodtok meg. Tényleg rengeteg variáció van...