Witam, mam następujący, dla większości na pewno banalny problem. Stałe (THEME_NAME, THEME_URL, THEME_AUTHOR) zdefiniowane w pliku theme.php, nie istnieją w pliku, który theme.php zarequirował. W theme.php stałe jak najbardziej poprawnie się wyświetlają.

theme.php:
  1. echo "<br />A kuku!<br />";
  2. define('THEME_NAME', "Default");
  3. define('THEME_URL', "http://google.pl");
  4. define('THEME_AUTHOR', "Autor");
  5. echo "<br />1)".THEME_NAME.THEME_URL.THEME_AUTHOR."<br />";


header.php:
  1. echo "<br />".DIR."themes/".THEME."/theme.php<br />";
  2. require_once DIR."themes/".THEME."/theme.php";
  3. echo "<br />1)".THEME_NAME.THEME_URL.THEME_AUTHOR."<br />";


footer.php:
  1. echo "<br />1)".THEME_NAME.THEME_URL.THEME_AUTHOR."<br />";
  2. echo FOOTER."<br />";
  3. echo "Theme \"".THEME_NAME."\" by <a href='".THEME_URL."'>".THEME_AUTHOR."</a><br />";


Output:
Kod
http://adresmojejstrony.com/nowe/themes/default/theme.php

A kuku!

1)Defaulthttp://google.pl/Autor

1)THEME_NAMETHEME_URLTHEME_AUTHOR

[...]

1)THEME_NAMETHEME_URLTHEME_AUTHOR
Mój własny tekst stopki.
Theme "THEME_NAME" by THEME_AUTHOR


Jak widać po adresie i "A kuku!" plik theme.php poprawnie się requiruje, jak również poprawnie wyświetla stałe. Ale header.php i footer.php już nie - choć plik jak już wspomniałem wstawia się prawidłowo. Co jeszcze ciekawe stała FOOTER (Mój własny tekst stopki.) również wstawia się prawidłowo - a jest identycznie wstawiona, z innego pliku, dosłownie linijkę wcześniej.

EDIT: SOLVED, requirowanie pliku z "http" requiruje efekt wyświetlany skryptu, a nie jego kod. require bez początkowego DIR, dało efekt : )