Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: jaki typ danych?
Forum PHP.pl > Forum > Bazy danych > MySQL
hmmm
chce stworzyc tabele, w ktorej bede przechowywal wszystkie dane o plikach do pobrania i w zwiazku z tym umieszczam w niej kolumny:
id, kategoria, plik, opis, wielkosc
byc moze cos pominalem, ale to nieistotne.
chodzi mi o to, w jakiej postaci dac wartosci w kolumnie kategoria?

lepiej dac varchar i wstawiac tam np. 'do pobrania', 'niemiecki', 'inny typ',
czy moze dac liczby i potem po pobraniu wartosci za pomoca funkcji switch dopasowywac odpowiednie wartosci do tych liczb, np. 1 => 'do pobrania', 2 => 'niemiecki', itd ...

prosze o opinie smile.gif
sf
ja przewaznie mam osobna tabele do kategorii, i wtedy kategoria to int i jest to odnosnik do id kategorii ;]
hmmm
a ja wymyslilem cos takiego ...
kategorie w bazie to liczby.
pobieram je z bazy, a nizej w kodzie php tworze tablice:
  1. <?php
  2. $kategorie = array(1 => 'kat1', 'kat2', 'kat3', 'kat4');
  3. ?>
i potem wyswietlam nazwe kategorii w ten sposob:
  1. <?php
  2. echo $kategorie[$zmienna];
  3. ?>
gdzie $zmienna jest wartoscia kategorii pobrana z bazy biggrin.gif
popbart
@hmmm , kiepski pomysł. Po co w ogóle kożystasz z bazy danych.
A jak ci się rozrosną kategorie, to będziesz miał dziesiątki swich'ów ?
Darti
można dać 4 kolumny w tabeli kategorie:
- cat_id (int) (key)
- parent_category (int)
- category_name (varchar)
- category_opis (text)

a w drugiej tabeli (np pliki) :
- plik_id (int)(key)
- category(int)
- nazwa (varchar)
- opis (text)
..... itd

Dzięki temu masz przejrzyście i możesz budować drzewo kategorii (przydaje się np przy menu)
hmmm
@popbart wiem, ze mozna to zrobic przez operacje na plikach, ale ... nie umiem tongue.gif
dlatego robie z wykorzystaniem bazy.
a poza tym, w podanym przeze mnie rozwiazaniu widac chyba, ze zrezygnowalem ze switch'a.

@darti dzieki, przyda sie winksmiley.jpg
choc podobne rozwiazanie proponowal juz @sf
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.