home kontakt galeria rss url

Błąd 29. lutego w phpBB by Przemo

We wszystkich wersjach skryptu phpBB by Przemo, także w najnowszej 1.12.6 pojawił się błąd związany z rokiem przestępnym.
Pojawia się tylko gdy mamy na forum włączony panel pokazujący użytkowników obchodzących urodziny.
Błąd ten charakteryzuje taki początek:

Could not obtain user/day information
DEBUG MODE
SQL Error : 1054 Nieznana kolumna 'error' w where clause

Pojawia się ponieważ w jednej z funkcji jest błąd, który ujawnił się
dopiero gdy nastała data '29 lutego'.

Można go łatwo poprawić, wykonując poniższe operacje:

OTWÓRZ plik includes/functions_add.php

ZNAJDŹ

else if ( $month == 2 && $day > 28)
{
return 'error'; //only 28 days in feb.
}

ZAMIEŃ NA

else if ( date("L") == 0 && $month == 2 && $day > 28)
{
return 'error 28'; //only 28 days in feb.
}
else if ( date("L") == 1 && $month == 2 && $day > 29)
{
return 'error 29'; //only 29 days in feb. leap-year
//fixed by Widmo
}

UWAGA!
1. Jeśli posiadasz swoje forum na darmowym serwerze np.: xad, forka, ovh, vdd itp., zgłoś problem do supportu świadczonego przez ten hosting. Jeśli nie masz dostępu do plików forum to samodzielnie nie naprawisz tego błędu - może to zrobić wyłącznie administrator danego serwisu.

2. Jeśli nie masz dostępu do plików forum i nie możesz zastosować poprawki, możesz usunąć ten błąd wyłączając panel urodzinowy.
- zaloguj się jako administrator,
- wejdź do Panelu Administratora | Konfiguracja | Strony głównej
- znajdź opcję Pokazuj obchodzących urodziny
- zmień na NIE i zatwierdź ustawienia

Poprawkę napisał Widmo.
Gotowy, poprawiony plik możesz znaleźć na forum supportu phpBB by Przemo.

gravatar

gizmo

luty 29, 2008 @ 09:14

Dzięki !! Bardzo mi pomógł ten artykuł!!

gravatar

arcy

luty 29, 2008 @ 09:17

Cieszę się niezmiernie :)

gravatar

Nyarlathotep

luty 29, 2008 @ 10:14

DZIĘKUJĘ! Bardzo pomogło w naprawie tego błędu... Chociaż rozumiem że jutro było by wszystko normalnie? ^^

gravatar

arcy

luty 29, 2008 @ 10:17

Nyarlathotep - mam forum testowe, na którym nie zaaplikowałem poprawki właśnie po to, aby zobaczyć czy błąd jutro sam zniknie :) Myślę, że tak właśnie będzie, bo jutro już jest 1 marca, a błąd dotyczy daty 29. lutego :) Dam znać czy tak się stało :)

gravatar

nosferathoo

luty 29, 2008 @ 12:20

Boże, co za /nieóki i tómany/ się biorą za pisanie w php :/

gravatar

arcy

luty 29, 2008 @ 12:32

nosferathoo - daruj sobie takie komantarze, bo nie są zbyt mądre. Taki jesteś masta - pokaż co Ty napisałeś w php? Jesteś autorem tak rozbudowanego skryptu jak phpBB?
Tak świetnie się znasz na php i SQL, że możesz krytykować pracę specjalistów? Pokaż swoje osiągnięcia, a dopiero potem rzucaj obelgami w innych ludzi :/
Jak nie masz nic ciekawego do powiedzenia to sobie daruj...

gravatar

nosferathoo

luty 29, 2008 @ 12:36

nie muszę się chwalić osiągnięciami, tak jak nie muszę być pilotem żeby widzieć że samolot spada

gravatar

arcy

luty 29, 2008 @ 12:43

nosferathoo - tak właśnie myślałem... Zero argumentów sensownych, zero inteligentnej dyskusji, za to tony jadu, wyzwiska.
Więc apeluję raz jeszcze - jak nie masz nic ciekawego do powiedzenia to sobie daruj.
Nie lubię takich pustych, wyzwisk, które tutaj zaprezentowałeś. Takie wypowiedzi świadczą nienajlepiej o ich autorach. Pewnie się poczułeś lepiej publikując taki zajebiaszczo yntelygentny komentarz, ale muszę Cię zmartwić - na mojej stronie nie będzie bezmyślnego rzucania bluzgami. Idź sobie na forum Onetu, tam się wyżyjesz do woli...

gravatar

nosferathoo

luty 29, 2008 @ 12:49

załóżmy że nie jestem autorem tak rozbudowanego skryptu jak phpbb ale przyznajmy że autor tego kwiatka wyżej również, bo to tylko jeden moduł, a już samo nazywanie go specjalistą woła o pomstę do nieba.

gravatar

arcy

luty 29, 2008 @ 13:04

nosferathoo - nikt nie jest w stanie wyłapać wszystkich błedów nawet podczas testowania przez dużą grupę użytkowników. To niemożliwe. Błędy może spowodować mnóstwo czynników. Począwszy od specyficznych konfiguracji serwerów, a skończywszy choćby właśnie na głupim 29. lutego.
Skoro błąd według Ciebie jest taki prosty, banalny i łatwy do zlokalizowania i naprawienia to trzeba było go znaleźć i wydać poprawkę przed 29. lutego.

Została wydana poprawka niemalże od razu po wystąpieniu błędu. Błąd nie jest związany z bezpieczeństwem. Więc nie bardzo widzę powód do obrażania kogokolwiek nawet jeśli ta osoba popełniła błąd. Ty też nie jesteś nieomylny - nikt nie jest. Równie dobrze możnaby było bluzgać wszystkich począwszy od Microsoftu, że ma mnóstwo dziur w Windowsie, a skończywszy na producencie papieru toaletowego, że się listki krzywo urywają.
Nawet jesli jestes niezadowolony to nie uprawnia Cię do obrażania kogokolwiek szczególnie, że ta osoba nie może się sama obronić. To bardzo brzydkie komentowanie nie jest ani konstruktywne ani miłe.

gravatar

Aval

luty 29, 2008 @ 15:05

Dzięki wielkie, pomogło ^^

gravatar

inwob.xad.pl

luty 29, 2008 @ 20:08

zrobiłem jak napisane i mi pisze:
Fatal error: Call to undefined function users_online() in /home/ler/domains/xad.pl/public_html/portal.php on line 236
Pomużcie

gravatar

inwob.xad.pl

luty 29, 2008 @ 20:10

lub pisze:
Fatal error: Call to undefined function users_online() in /home/ler/domains/xad.pl/public_html/index.php on line 592

gravatar

Mroofka

luty 29, 2008 @ 21:26

Proponuje dodać do wykopu napewno się tam ucieszą .Przy okazji wielkie dizęki

gravatar

dArI0

luty 29, 2008 @ 23:30

Dzięki za informację! Bardzo mi pomogła.
Pozdrawiam.

gravatar

arcy

marzec 3, 2008 @ 21:00

inwob.xad.pl - po pomoc zapraszam na forum supportu.

Mroofka - było na Wykopie - http://www.wykop.pl/link/48544/problem-roku-przestepnego-na-forach-phpbb2-by-przemo

Pozdrawiam :)

kanał rss dla komentarzy · trackback uri

zostaw komentarz