Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailem web azazie > tabulky v db

Ahoj,
chci dělat ten web na procvičování afatiků on-line.
Mám v plánu zatím pouze obrázky s nápisy různým písmem. Potřeboval bych konzultovat, jak to vůbec pojmout. Určitě to bude na databázi.
Mám představu, že budou v menu položky, například „dům“, „obchody“, „doprava“... - to budou nejvýše nadřazené. Klikne se v menu na dům a objeví se obrázky s nápisy, například „koupelna“, „ložnice“, „kuchyń“...
Klikne se na obrázek koupelny a zobrazí se „vana“, „sprchový kout“, „umývadlo“...
klikne se pak v koupelně na obrázek umývadla a zobrazí se „mýdlo“ "baterie“...
Klikne se na obrázek mýdla a zobrazí se třeba obchody (uložené v databázi) s otázkou kde se dá mýdlo koupit a zobrazí se obchody z menu, nebo jakákoli jiná smyčka (nevím jaká), aby to bylo „nekonečné“.
Nové věci (tramvaj, kůň, rohlík) chci přidávat přes formulář v administraci a měly by se automaticky vypisovat (menu) a zobrazovat (obrázky), navíc být právě „provázané“ na onu nekonečnou smyčku.
Jde mi tedy o to jak (a kolik) pojmout tabulky v databázi.
Zatím mne napadá:
tabulka menu
id_menu (varchar auto_increment)
nazev (varchar 20 – např „dům“, „doprava“)
title (to je jasné)

tabulka polozky
id_veci (varchar auto_increment)
id_menu (varchar 4) – kde se bude zobrazovat při kliknutí v menu
nadrazena_polozka (napr. u koupelny dům)
podrazena_polozka (např. u koupelny vana, sprcha – a to právě nevím - je jich víc - možná i zbytečné
cesta_obrazek (tag s cestou)
odkaz (co se stane při kliknutí např. na vanu)
alt (to je jasné)
title (to je jasné)

Zkrátka jen přidávat ve formuláři věci a vše se dělá samo (po selectech a while).
Takový malý nástřel v HTML, aby bylo vidět oč mi jde je na afazie (funguje jen na dům > koupelna).

Předmět Autor Datum
Myslim, ze system nadrazenych a podrazenych polozek by mohl být vyřešen ve zvlastni, ale jediné tabu…
Zajic 02.08.2009 17:10
Zajic
To není špatný nápad. Prostě s další přibyvši položkou v menu (třeba "počasí") by tato dostala ID a…
Kráťa 02.08.2009 17:29
Kráťa
Určitě, máte samozřejmě pravdu. Jinak, nešlo by o novou tabulku, ale upravenou tabulku "menu" s tout…
Zajic 02.08.2009 17:37
Zajic
Nebo si to nějak odstupňovat a udělat v tabulkách sloupce stupen a tam psát číslo. Tramvaj je "dopra…
Kráťa 02.08.2009 22:42
Kráťa
Nebo to "podrazena_polozka" úplně vyhodit? Není to tam zbytečné?
Kráťa 03.08.2009 10:02
Kráťa
jj, podřazenou položku vyhoď, ta tam je IMHO zbytečná. poslední
marekdrtic 03.08.2009 10:13
marekdrtic

Myslim, ze system nadrazenych a podrazenych polozek by mohl být vyřešen ve zvlastni, ale jediné tabulce:

id	name		parent_id
----------------------------------
1	all		NULL
2	dům		1
3	obchody		1
4	doprava		1
5 	koupelna    	2
6	jidelna		2
7	kuchyn		2
8	loznice		2
9	tramvaj		4
10	auto		4
atd ...

Sloupec "parent_ID" by byl cizi klic a odkazoval by na primarni klic "id" v teze tabulce.
Touto jedinou tabulkou by byla vyřešena hierarchie jednotlivých položek. Tím by snad byl vyřešen problém s neznámým a předem těžce odhadnutelným počtem podřízených položek.

Určitě, máte samozřejmě pravdu.
Jinak, nešlo by o novou tabulku, ale upravenou tabulku "menu" s touto vnitřní relací. Mně šlo spíš o to, jak vyřešit problém hierarchie v jedné tabulce bez nutnosti vypisovat nadřazené a podřízené položky. Je to pouze jedna z možných variant ...

Zpět do poradny Odpovědět na původní otázku Nahoru