![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 145 Pomógł: 1 Dołączył: 12.07.2006 Ostrzeżenie: (10%) ![]() ![]() |
Witam, szukam optymalnego rozwiązania dla skryptu pogody dla wszystkich miast powiatowych w Polsce.
Zrobiłem dla 1 województwa kilkanaście plików php o strukturze pogoda-wroclaw.php , pogoda-walbrzych.php .... w pliku .htaccess zamieniam to na html
W efekcie na serwerze powstaje mi ok 20 miast x 16 województw do tego plik htaccess rozrasta się w nieskończoność. Myśle nad wykorzystaniem CASE gdzie w każdym warunku będzie nowe miasto. Czy to optymalne rozwiązanie ? Czy kilkaset warunków case nie będzie zbytnio obciążało serwera -czy lepszym rozwiązaniem będzie stworzenie 16 plików /województw/ a w nich około 20 warunków case ? Proszę o naprowadzenie mnie na dobry tok myślenia. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Moderatorzy Postów: 8 989 Pomógł: 1550 Dołączył: 8.08.2008 Skąd: Słupsk/Gdańsk ![]() |
Rzecz której Ci potrzeba to Stemming. Czyli zamiany formy odmiany słowa do formy podstawowej. Czyli u Ciebie zamiana słowa "Wrocławiu" na "Wrocław".
Są 2 odmiany stemmerów. Jeden z nich to słownikowy (czyli po prostu "mapa" np "Wrocławia" zamień na "Wrocław") i raczej tym powinieneś się zainteresować (a właściwie napisać). Co do procesu jak miałoby to działać to 1) Kod RewriteRule ^pogoda-([^;]*).html pogoda.php?city=$1 [L] Jest ok ze względu na uniwersalność. 2) Bazę miast utwórz jako oddzielną tabelę (miasta - id_miasto, nazwa_miasta) 3) Bazę słownikową odmian jak oddzieną tabelę (odmiana_miast - slowo, id_miasta) 4) Tutaj twoja tabela pogody (pogoda) 5) Przy dodawaniu nowego opisu pogody przepuszczasz nazwę miasta przez proces wyszukujący powiązania odmiany w tabeli "odmiana_miasto" 6) Jeżeli nie znajdzie wyniku w tabeli "odmiana_miasto" szukasz wyniku po tabeli "miasta". 7) Jeżeli 5 i 6 nie zwróci wyniku to sorry jest błąd 8) Jeżeli 5 bądź 6 zwróci wynik to masz id_miasta które wstawisz do tabeli "pogoda". Dzięki temu wiesz po jakim id_miasta szukać. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 14.10.2025 - 14:26 |