ugrás a tartalomhoz

login rendszer kicsit másképp

Dzsijszi · 2010. Dec. 19. (V), 09.43
Sziasztok!

Készítek egy weboldalt, ahol azt szeretném, hogy a regisztrált felhasználó kapjon egy domain utáni nevet, ami a felhasználóneve lenne. Tehát regisztrációkor megadja, hogy az ő felhasználó neve 'teszt' és miután regisztrált a program létrehozza neki a www.oldalam.com/user/teszt.php oldalt az alapbeállításokkal. Ezért arra gondoltam, hogy mi lenne, ha az adatait a felhasználóknak nem adatbázisban, hanem a saját oldalán tárolnám?.

A kérdéseim ezzel a kapcsolatban pedig a következők lennének:

Az ötlet nem abszolút hülyeség-e?

A dolog megvalósítható-e JavaScript-el vagy a php elengedhetetlen hozzá?

Végezetül pedig jó-e ha a php oldalán tárolom az adatokat vagy jobb volna, ha megcsinálnám az url-t és adatbázisból tölteném be az adatait?

A segítséget előre is köszönöm és elnézést a sok kérdésért!
 
1

Kavar

janoszen · 2010. Dec. 19. (V), 10.06
  • Úgy érzem, kavar van a fejekben. JavaScripttel nem igazán tudsz tárolni adatot (ha a böngészőben implementált minimális adattárolótól eltekintünk).
  • Nem tudom, mit értesz az alatt, hogy a "felhasználó saját oldalán" tárolnád. Az oldalának az adatai vagy adatbázisban, vagy fájlrendszerben kell tárolni.
  • Szerintem, mondd el, mit próbálsz megcsinálni, mert 99,999%, hogy rosszul fogtál neki (az összedobált, kevés információt tartalmazó mondataidból ítélve).
2

oké, akkor tehát...

Dzsijszi · 2010. Dec. 19. (V), 13.24
Akkor tehát még egyszer kicsit pontosabban:
Szeretnék csinálni egy olyan oldalt, ahol a felhasználók tudnak regisztrálni és regisztráció után kapnak egy címet, amit ha beírnak közvetlenül el tudják érni a weboldalukat. Ezeket az oldalakat csak ők tudják megtekinteni, tehát mindenki a sajátját. Hogy mi van itt? Itt tudják eltárolni anyagaikat. Pl. ha lefordítanak egy szöveget van arra hely, hogy egymás mellett a fordítandó és fordított szöveget eltárolják. A tárolás nem JavaScript-ben gondoltam! Ez csak az övék.

A dolgok programozási megközelítése:
Regisztráció után a JavaScript (Ajax) elküldi az űrlap adatait az adatbázisnak és az létrehozza a felhasználót és eltárolja annak nevét, jelszavát és e-mail címét. A JavaScrpt pedig létrehozza a felhasználó nevéből az url címét, az alapbeállításokkal. Miután a felhasználó belép az oldalába és ott beír valami új adatot, a JS felveszi azt az oldalba. De nem a js tárolja csak ő veszi fel a html oldalba az adatokat, amiket aztán a html rögzít. A kérdésem pedig ezzel kapcsolatban az volna, hogy ez megvalósítható-e js-el (tehát, hogy létrehozza az url-t) vagy sem? Valamint, hogy az megvalósítható-e, hogy a html oldal forráskódjába illessze a dolgokat vagy azt is adatbázissal kellene tárolni?

Remélem most már érhetőbb voltam!

Előre is köszönöm a segítséget!
3

html

Poetro · 2010. Dec. 19. (V), 13.49
A HTML egy leíró nyelv, nem tud adatokat tárolni önállóan. Azokat valahogy le kell menteni a szerverre, mondjuk PHP vagy más szerver oldali nyelv segítségével. Nem teljesen világos, mit akar az jelenteni, hogy a JavaScript hozza létre az URL-t? Ha az URL mögött nincsen elérhető tartalom, akkor annak nincsen értelme. Amennyiben szerver oldali JavaScripttel akarsz foglalkozni, akkor ajánlom a Node.js-t, és az azzal foglalkozó cikkemet.
Valamint, hogy az megvalósítható-e, hogy a html oldal forráskódjába illessze a dolgokat vagy azt is adatbázissal kellene tárolni?

Nem feltétlen kell adatbázisban tárolni, de mindenképpen az adatokat el kell küldeni a szervernek, mivel a forráskódba csak a szerver oldalon tudsz adatokat beilleszteni, a böngészőben már csak a böngésző által készített DOM fát tudod manipulálni.
4

Nos, ha jól értelmezem a

neogee · 2010. Dec. 22. (Sze), 22.42
Nos, ha jól értelmezem a dolgot, akkor tulajdonképpen egy olyan rendszert szeretnél elkészíteni amelyben minden user kap egy profilt, amely profil privát, azaz a külvilág elől elzárt, és mindenki csak a kis saját dashboardján dolgozhat.
Voltaképpen egy kis homokozót szeretnél adni a beregelt felhasználóknak. :)

Amennyiben tényleg ezt szeretnéd megvalósítani az én ötletem a következő:

Regisztráció -> létrejön a user az adatbázisban

Amikor a felhasználó beloginol a rendszerbe, akkor automatikusan átirányítod a http://example.org/username/ url-re mégpedig úgy, hogy segítségül hívod az apache mod_reqrite modulját. Ezzel azt éred el, hogy tulajdonképpen a nem létező url-t át tudod adni egy php filenak olyan formában ahogy neked megfelel.
Pl.: belépek én a rendszerbe neogee felhasználónévvel. Ekkor átirányitasz a http://example.org/neogee url-re. A htaccess segítségével ez az url mondjuk az alábbi formára alakul át: example.org/index.php?page=userhome&user=neogee
Ezek után már csak annyi dolgod van a user homepageén, hogy mikor kérés érkezik akkor megvizsgálod, hogy a belépett felhasználó megegyezik-e az urlben jelölt felhasználóval, és ha nem akkor hibaüzenetet dobsz. :)

Valami ilyesmit tudok elképzelni. Hogy ezt milyen technológiákkal valósítod meg, az gyakorlatilag teljesen mindegy, a példában is azért szerepel php mert gondolom ahhoz értesz. :)

Remélem valamennyit sikerült segíteni. :)

Szerk:

Létrehozni url-t semmivel sem tudsz, ugyanis egy az url az csak egy karaktersorozat, ami mögött vagy van egy erőforrás amit a szerver ki tud szolgálni, vagy sem. Az apache mod_rewrite modulja éppen ezt hivatott "kicselezni". Arra jó a modul, hogy a HTTP kérésben küldött url címet nem próbálja meg automatikusan kiszolgálni, hanem előtte megkapod, és átalakíthatod.
Ennek az átalakításnak sokféle módja van, de erről biztosan fogsz találni egy halom leírást...

Tulajdonképpen ennek az a lényege, hogy képes vagy olyan url cimeket is feldolgozni és kiszolgálni szerveroldalról amelyek nem valós elérési utak, azaz nem létezik mögöttük valós erőforrás, pl file.