lukash82
29.10.2012, 17:36:51
Witam,
Mam tabelę z ustawieniami do CMS (kolumny: id, nazwa, wartosc), np.:
1,szerokosc,800
2,wysokosc,600
3,ladowane obrazki,jpg
Poprostu wszystkie ustawienia CMS do kupy w jednej tabeli.
W skrypcie strony chcę się odnosić do wybranych pozycji z tabeli. I teraz pytanie, czy rozwiązanie na zasadzie każdorazowego odwoływania się do konkretnego elementu w tablicy za pomocą zapytania do bazy jest optymalne?
Tak sobie wymyśliłem, że może optymalniejszym rozwiązaniem będzie załadować całość tabeli do tablicy i odwoływać się do jej elementów. Mam wtedy jedno zapytanie do bazy, a tablica gdzieś tam może sobie wisieć w pamięci. Oczywiście tych ustawień nie będzie tu nie wiadomo ile, myślę, że max 50-100 rekordów. Jeśli ktoś może mi podpoiwedzieć, które z tych rozwiązań na dłuższą metę jest lepsze to proszę o info. Pozdrawiam, Ł.
nospor
29.10.2012, 17:39:09
Lepsze drugie rozwiązanie
b4rt3kk
29.10.2012, 17:49:20
Również uważam, że drugie rozwiązanie lepsze.
lukash82
29.10.2012, 18:54:21
Ok, dzięki za info. Tworzę więc taką tablicę w funkcji:
function ustawienia(){
$tab[$row['ustawienia_id']] = $row['wartosc'];
}
return $tab[];
}
i teraz jak się odwołać do takiej tablicy wewnątrz tej funkcji. Coś nie bardzo mogę sobie z tym poradzić...:/ Na pewno muszę chyba wywołać conajmniej raz tą funkcję ale potem nie wiem jak pobrać z tej tablicy określony element... Proszę o jakąś podpowiedź bo coś dzisiaj czuję niemoc...:/
b4rt3kk
29.10.2012, 19:00:37
Źle do tego podchodzisz. Dajmy na to, że masz plik config.php. Includujesz go tam gdzie potrzeba.
function ustawienia(){
$tab[$row['nazwa']] = $row['wartosc'];
}
return $tab;
}
$config = ustawienia();
Ciężko dojść co jest co, jeśli kluczem tablicy będzie id, najlepiej by była to nazwa ustawienia. Teraz tak przykładowo, choćby rozmiar czcionki pobierasz tak:
$config['font_size'];