Jak już jesteśmy przy problemach... Miałem do napisania skrypt stronki dość prosty, więc zrobiłem go jako jeden index z zaszytym wewnątrz routingiem. Od wczoraj gryzłem monitor, bo po przeniesieniu na produkcję skrypt działał jak chciał. A dokładniej to routing działał jak chciał. Po wielu godzinach męczarni okazało się, że praktycznie wszystko było w porządku, poza faktem, że:
1) Apache kłócił się mod rewrite, więc dostawałem dla podstron "File not found" i wstawienie ? przy regułce index.php/$0 do postaci index.php?/$0 nie daje rezultatu oczekiwanego, ponieważ...
2) wszystkie moje przeglądarki sobie pocache'owały adresy i nawet wywołania z pominięciem cache mimo wszystko z czegoś w pamięci przeglądarki korzystały do routingu.
W efekcie straciłem wiele godzin pracy tylko po to, by zadziałały gdy wyczyściłem
całkowicie pamięć przeglądarki we wszystkich, a nie tylko cookies i cache. Pamiętane bowiem adresy były mi serwowane nieprawidłowe dane mimo wszystko. Oczywiście zanim do tego doszło efekt był taki, że główna domena i nieodwiedzone adresy pokazywały prawidłowe dane, ale te odwiedzone miały byki i... routowały mnie na stronę główną. W efekcie widziałem błędy tam, gdzie ich nie było i próbowałem je na dodatek naprawiać. Ehhh... Czasem przeglądarka potrafi narobić problemy tam, gdzie ich nie ma

I oczywiście logi wszelakie też mi nic nie dawały bo i nijak dać nie mogły, skoro już na poziomie wpisywania adresu do przeglądarki, ta podmieniała mój adres wpisany na nieprawidłowy i serwer żądanie nieprawidłowe otrzymywał co powodowało, że głupiałem patrząc w logi na podstawie połączeń tworzone. Podejrzewałem nawet biedny htaccess o krecią robotę lub byki w przetwarzaniu, bo wykrywałem błąd jeszcze zanim dochodziło do routingu na poziomie pliku index.php :/
EDIT: debugu ciąg dalszy. Miałem małą zamotę z kodowaniem, ponieważ... Odczyt nie wykrywał nieprawidłowości i ta operacja dawała ok kodowanie do bazy gdyż wymusząłem utf8 poprzez "set character set utf8", ale już przy zapisie do zewnętrznej bazy z tym ustawieniem polskie znaki zamieniało na ? i widziałem to z poziomu bazy. Gdy rezygnowałem z "set character set utf8" zapis do bazy przebiegał prawidłowo i polskie znaki były, ale w odczycie już nie. Przy wielu więc możliwościach kombinacji zdałem się na metodę: "Mamy 3 główne funkcje nieco inaczej ustawiające połączenie z serwerem, więc tylko naście kombinacji. Wypróbujmy je wszystkie"

Ostatecznie wyszedł mi taki potworek...
1) Nawiązuję połączenie normalnie z set character set utf8
2) jeśli następuje opcjonalny zapis (nie zawsze on będzie) to robię "set names utf8"
3) jeśli był zapis, powracam do ustawień poprzez ponowne "set character set utf8"
Nie pytajcie mnie czemu tak... Inaczej po prostu albo nieprawidłowo zapisuje, albo nieprawidłowo odczytuje z zewnętrznej bazy, a nie chce mi się wnikać jakie ustawienia konfiguracyjne serwera co do kodowania obie funkcje zmieniają i tym samym jaka między nimi różnica. Ważne, że się nadpisują, bo inaczej by to nie działało.