Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] pobieranie ustawień strony z mysql
Forum PHP.pl > Forum > Przedszkole
d.stp
mam powiedzmy taką funkcje:
  1. function get_page_settings($name) {
  2. return mysql_fetch_assoc(mysql_query("SELECT * FROM `settings` WHERE `setting_name` = '$name'"));
  3. }


i mam kilka pytań:

1. czy takie coś ma w ogóle sens?
2. powiedzmy chce pobrać ustawienia strony tj. meta tagi, email administratora, itd...

w panelu wyświetlam tak:
  1. echo get_page_settings('meta_tags');
  2. echo get_page_settings('email');


3. czy nie obciąża to bardzo bazy? na 1 podstronie muszę pobrać kilkanaście takich rekordów, a później (w przypadku zmian w panelu je zapisać)
4. da się to zrobić jakoś lepiej?

to jest przykład, w praktyce będzie to pdo, ale nie jest to teraz ważne
d3ut3r
Jest kilka możliwych usprawnień (tak mi się wydaje tongue.gif ).

1. Funkcja mogłaby pobierać tablicę kluczy które chcesz pobrać wówczas jednym zapytaniem z warunkiem WHERE setting_name IN ('klucz1','klucz2'...) możesz pobrać kilka ustawień.

2. Można też wczytywać cały config do tablicy na początku skryptu a później pobierać dane z tablicy (co wydaje się dość praktyczne - tylko 1 zapytanie do bazy).

3. Ostatecznie i tak zazwyczaj opieram konfigurację na plikach.

d.stp
no dobra, a jak to pobrać do tablicy? możesz rzucić jakimś przykładem + jak z tego korzystać?

odświeżam
Evinek
  1. function get_page_settings() {
  2. return mysql_fetch_assoc(mysql_query("SELECT * FROM `settings`);
  3. }
  4.  
  5. $settings = get_page_settings();
  6. echo $settings['meta_tags']; // Itp.

A najlepiej cache dołożyć do tego aby nie brać co chwile z bazy danych. Edytujesz te dane - aplikacja usuwa cache. Pierwszy użytkownik pobiera z bazy danych i dodaje do pliku - reszta bierze znów z pliku.
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.