Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] funkcje, klasy
Forum PHP.pl > Forum > Przedszkole
maly_pirat
Cześć.

W jaki sposób zrobić, aby dana funkcja była "globalna", ponieważ mam drobny problem z wywoływaniem zawartości funkcji.

W index.php wywołuje funkcje page_footer(); - działa idealnie, stopka serwisu się tworzy, ale do funkcji page_footer(); dopisałem $db->sql_close(); i gdy wejdę na index.php dostaje komunikat Fatal error: Call to a member function sql_close() - natomiast, jak dodam do index.php zamykanie połączenia wszystko wykonuje się OK.

W index.php na początku dokumentu includuje plik php, z funkcjami serwisu.
PawelC
co masz w sql_close()
Cytat
Fatal error: Call to a member function sql_close()

odwołujesz się do funkcji sql_close() która nie istnieje
Crozin
Odwołujesz się do metody sql_close() z obiektu, który jest pod zmienną $db. Pytanie za 100 punktów: czy zmienna $db jest widoczna w [tutaj nazwa pliku i nr linii z błędu]
maly_pirat
Ogólnie mówiąc: mam plik common.php, a w nim takie funkcje, includy..
// ciach

w functions.php, mam page_header() funkcje, która wywołuje nagłówek;
//ciach

Index.php składa się tak:
//ciach

w index.php $board_config nie działa, dlaczego? A gdy wpiszę $board_config['counter']; pod
//ciach

to wszystko się wyświetla. Coś jakby blokowało wyświetlanie w index.php
Crozin
Do poczytania w manualu: PHP variables scope (zasięg zmiennych)
maly_pirat
Wpisuje po
Kod
function page_header($page_title = '')
{
  global $board_config;
  // reszta kodu standardowo
}


jednak w index.php nie wyświetla mi zawartości ;f
Crozin
1) Nie używaj globala - było napisane nie raz nie dwa dlaczego.
2) Nie uważasz, że tworzenia $board_config - czyli z tego co widzę głównej konfiguracji w funkcji tworzącej nagłówek strony jest co najmniej złym pomysłem?
3) Funkcja może przyjmować parametry, może też zwracać wartości.
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.