Jestem pewien, że to żaden problem, ale nie mogę go rozwiązać. Proszę nie bijcie

Chcę maksymalnie oddzielić PHP od HTML, więc każdą zmienną która ma doczepiony jakiś HTML wycinam do osobnego pliku ustawienia.php (narazie tak tylko potrafię). Tam mam komunikaty, zdefiniowane ścieżki itp.
Jedną z takich zmiennych jest format zapisu do pliku tekstowego. Pomiędzy tagami HTML są zmienne PHP.
Includuję plik ustawienia.php do pliku ksiega.php:
<?php require_once('../ustawienia.php'); // tutaj mam kod pobierający dane z formularza //a później // jeśli tu zdefiniuję wygląd wpisu (zmienna wpis), to wszystko działa $plik =\"wpisy.txt\"; ?>
a w pliku ustawienia.php mam tak zdefiniowany format wpisu:
<?php $wpis = '<div class=\"wpis\"></div class=\"wpis\">autor: ' .$nick. ' - w dniu ' .$czas. ' o godzinie ' .$godzina. ' Z numeru ip: ' .$ip. ' ' .$tresc_ksiegi. ' '; ?>
no i do księgi zapisują się puste pola. ten sposób mi nie działa. Działa tylko wtedy gdy zmienną $wpis dam wewnątrz skryptu wpisującego do pliku tekstowego. Inaczej pisząc: zmienna wpis wypełnia się danymi z formularza tylko gdy jest podana wewnątrz skryptu księgi, nie wypełnia się, gdy jest w includowanym pliku.
Czytałem o zmiennych globalnych, znalazłem tylko sposoby na odwrotną sytuację. Może słabo czytałem.
Da się to jakoś rozwiązać? Nie chcę przerabiać skryptu wpisującego do pliku tekstowego (bo wiem, ze można wpisywać tak: nick||wpis||data||kolor_oczu, a później explode przy odczytywaniu, ale to też wymaga mieszania HTML z PHP).
Proszę o pomoc. Aha no i chyba nie ma sensu zapisywać w sesji tych zmiennych
edit:
dodałem tylko komentarz do kodu