![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 113 Pomógł: 2 Dołączył: 15.09.2011 Ostrzeżenie: (0%) ![]() ![]() |
Witam. Wczoraj spotkałem się z doscyć dziwnym problemem. Klasy związane z tworzeniem i zarządzaniem forumularzami umieściłem w pliku form.php i umieściłem w katalogu inc. Stworzyłem też plik register.php i umieściłem w głównym folkderze projektu. Oczywiście dołączyłem plik form.php za pomocą include
I tutaj pojawiły się pierwsze schody, ponieważ, ponieważ moim oczom ukazał się następujący błąd Cytat Fatal error: Cannot redeclare class Form in /var/www/html/inc/form.php on line 5 Kiedy ten sam plik (niech nazywa się nowy.php) umieszczałem w katalogu inc (zmieniałem jedynie ścieżkę w include, tj. "form.php", zamiast "inc/form.php"), wszystko jest ok. Próbowałem też stworzyć nowy plik w katalogu głównym i dołączyć do niego plik nowy.php. Pojawia się dokładnie ten sam błąd. Z czego to może wynikać? |
|
|
![]()
Post
#2
|
|
![]() Grupa: Moderatorzy Postów: 6 072 Pomógł: 861 Dołączył: 10.12.2003 Skąd: Dąbrowa Górnicza ![]() |
Kilkukrotnie dołączasz plik, w którym jest deklaracja klasy Form. Sprawadź, w którym pliku masz "class Form..." i gdzie go dołączasz.
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 113 Pomógł: 2 Dołączył: 15.09.2011 Ostrzeżenie: (0%) ![]() ![]() |
To co jest w komentarzu, próbowałem zamieścić w oddzielnym pliku + dołączyć include
form.php
register.php
To są dwa najważniejsze pliki. W pozostałych plikach także nie ma drugiej klasy form. Gdzie leży błąd? |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 1 527 Pomógł: 438 Dołączył: 28.06.2011 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Gdzieś musisz mieć include'a tego form.php drugiego - wyszukaj w plikach jak nie możesz znaleźć - zawsze możesz zastąpić include jej bratnim include_once co powinno rozwiązać problem.
-------------------- If you're good at something, never do it for free.
Potrzebujesz skryptu JS lub PHP - szukasz kogoś kto przetestuje twoją aplikację pod względem bezpieczeństwa? Szybko i solidnie? Napisz ;) Mój blog - Jak zwiększyć wydajność front-endu - O buforowaniu wyjścia w PHP słów kilka... |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 113 Pomógł: 2 Dołączył: 15.09.2011 Ostrzeżenie: (0%) ![]() ![]() |
Próbowałem wpiosać include_once, ale wtedy formularz pojawiają mi się dwa formularze. Dlaczego plik z tym samym kodem (tylko ze zmienioną ścieżką) działa bez problemu z katalogu inc?
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 324 Pomógł: 105 Dołączył: 7.08.2012 Ostrzeżenie: (0%) ![]() ![]() |
Może po prostu wówczas jeden z plików zawierających klasę Form nie jest includowany i wyświetla się ostrzeżenie gdzieś tam w kodzie, ale te masz wyłączone i go nie widzisz? Drugi zawierający tę klasę wczytuje się normalnie i i nie ma błedu o próbie stworzenia klasy o już istniejącej nazwie?
Cytat Kiedy ten sam plik (niech nazywa się nowy.php) umieszczałem w katalogu inc (zmieniałem jedynie ścieżkę w include, tj. "form.php", zamiast "inc/form.php"), wszystko jest ok. Próbowałem też stworzyć nowy plik w katalogu głównym i dołączyć do niego plik nowy.php. Pojawia się dokładnie ten sam błąd. Z czego to może wynikać?
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 113 Pomógł: 2 Dołączył: 15.09.2011 Ostrzeżenie: (0%) ![]() ![]() |
Zmieniłem nazwę klasy, ale błąd został. Mam zaledwie kilka plików i kilka includów. Sprawdziłem wszystko dokładnie. Ten plik includuję tylko raz.
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 20.08.2025 - 07:32 |