Wpis z mikrobloga

#webdev

Co może być przyczyną takiego komunikatu? Wiem, że może mieć to związek z PHP serwera.

Fatal error: Cannot redeclare class recoverPassword in /recoverPassword.php on line 5
W 5 linii znajduje się:

class recoverPassword extends kernel
Dodam, że skrypt jest bardzo stary, działa tylko na wersji PHP 5.2. Po zmianie wersji PHP na inną, lub wyłączając cache komunikat odnosi się do ostatniej linii kodu w pliku gdzie jest:

}
  • 25
@damianooo5: dobra, juz wiem. Dopiero teraz zobaczyłem blad. Chodzi o to, ze gdzies juz masz tą klasę gdzies „wy includowaną”. Zobacz, czy gdzies przypadkiem nie ściągnąłeś tej klasy drugi raz.
@pndx: Nie pomogła zmiana litery na wielką (wiem że takie rzeczy czasem pomagają). Jednak dzięki za chęć pomocy.
Dziwne jest to, że wszystko działało, dopóki domena nie wygasła i nie zarejestrowałem ją na nowo (nic nie mieszałem w kodzie).
@damianooo5: astrogrep
wklepujesz do szukarki nazwę pliku, w którym masz zdefiniowaną klasę, pokaże listę plików z require/include, przejrzyj je sobie i określ powiązania pomiędzy tymi plikami
@damianooo5: Gdzieś jeszcze miałem wystukany w c++ programik do robienia mapy powiązań pomiędzy plikami. Ale byłby pomocny tylko w wypadku, gdy nazwy plików byłyby użyte bezpośrednio (czyli: include( "aaaa.php" )) zamiast poprzez zmienne.
@januzi: Sory jeśli walnę teraz gafę, ale laikiem jestem.
Znalazłem drugi dokładnie taki sam plik (ten z linka wyżej) w innym katalogu (jeden w /emaile, a drugi w /cms). Oba zostają uruchomione z tego co widzę.
Czy dobrze robię zamieniając w tym drugim pliku:

class recoverPassword extends kernel
na

if ( !class_exists( 'recoverPassword' ))
Bo nie działa.
@damianooo5: A jak dalej nie będziesz w stanie sobie z tym poradzić, to wystaw to jakoś, żeby było dostępne przez www, daj dostęp do ftp to za 5-10 minut będziesz mieć działający.
@januzi: Faktycznie :). Jednak co prawda nie ma już białego błędu PHP to i tak nie można wykonać wygenerowania nowego hasła przez użytkownika. Wyświetla skryptowy czerwony komunikat "Nie udało się wygenerować nowego hasła".

Jeżeli masz jakiś pomysł to będzie super, a jak nie to nie chce cię naciągać, a też niestety nie mogę podać linka bo nie chcę powiązywać swojego konta wykop z życiem prywatnym :)