Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Przedwczesne kończenie testu
phpion
post 13.09.2007, 20:33:41
Post #1





Grupa: Moderatorzy
Postów: 6 070
Pomógł: 860
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




Witajcie!
Ostatnio chciałem sobie rozwiązać teścik. No i sobie pykam, doszedłem do ~7 pytania, czasu mi zostało ~20 sekund i koniec. Wyświetlił się jakiś komunikat, że (chyba) 'przekroczono coś tam' i nastąpił koniec quizu. W rezultacie wykosiłem 0 pkt biggrin.gif Sądzę, że nie tylko ja miałem taki problem, bo jest sporo ludków z 0 pkt smile.gif Moglibyście na to rzucić okiem?
Go to the top of the page
+Quote Post
Force
post 16.09.2007, 20:06:37
Post #2





Grupa: Zarejestrowani
Postów: 55
Pomógł: 6
Dołączył: 17.05.2007

Ostrzeżenie: (0%)
-----


U mnie dzisiaj było to samo. Jest możliwe, że mogło przerwać się połączenie z mojej winy ale przynajmniej powinna być wyświetlona ilość poprawnych odpowiedzi które do tej pory zaznaczyłem.
Poniżej screen


UPDATE

Dzisiaj znowu było to samo :/

Odświeżyłem stronę i mi wywaliło

Kod
Fatal error: Allowed memory size of 16777216 bytes exhausted (tried to allocate 519407 bytes) in /home/test/Vframe/core/Vframe/Cache.Class.php on line 27


Ten post edytował Athlan 24.09.2007, 19:01:39
Powód edycji: Poprawione, dzięki :)
Go to the top of the page
+Quote Post
zimi
post 23.09.2007, 17:47:02
Post #3





Grupa: Zarejestrowani
Postów: 233
Pomógł: 9
Dołączył: 3.06.2007

Ostrzeżenie: (0%)
-----


też miałem ten problem, jeśli jednak ciężko go naprawić (np. ponowić próbę żądania) to poprawcie chociaż ten błąd ortograficzny :/
Cytat
Żądanie przerwane, upłynął czas oczekiwania!
Powód edycji: Ort poprawiony. Nawet nie wiem jak się tam wkradł bo poprawialem go juz 2 razy o.O"
Go to the top of the page
+Quote Post
krzyszbi
post 24.09.2007, 15:56:07
Post #4





Grupa: Zarejestrowani
Postów: 251
Pomógł: 13
Dołączył: 15.09.2005

Ostrzeżenie: (0%)
-----


Widać nie tylko ja tam mam a co najgorsze zalicza 0 ptk i nic na to nie mogę zrobić a już ma tak fajnie się rozwiązywało sad.gif
a moze zgłaszać coś takiego choć pewnie sie znajda osoby co mogą nadużywać tej funkcji więc ją do jednej próby ograniczyć questionmark.gif co wy na to


--------------------
Everything should be made as simple as possible, but not simpler. - A.Eainstein
Go to the top of the page
+Quote Post
Athlan
post 24.09.2007, 18:59:20
Post #5





Grupa: Developerzy
Postów: 823
Pomógł: 12
Dołączył: 18.12.2005

Ostrzeżenie: (0%)
-----


Już wyjaśniam na czym polega problem.

Pytanie jest zaliczanepo stronie serwera. Zakładamy:

1. User odpowiedział na pytanie w 10 sec, nastepne 10 sec to ponowienie polaczenia - pytanie zaliczone!
2. User odpowiedział na pytanie w 30 sec, nastepne 30 sec to kolejne proby polaczenia, które powiodły się - pytanie nie jest zaliczone!

Dlaczego. Serwer zapamiętuje sobie czasy, NIE MA możliwości przedłużenia tego czasu np przez JS, bo każdy w firebugu przedłużałby sobie taki czas do 500 sekund...

Co do pzerywania połączeń. Niekiedy serv php.pl zamuli na dobre i pomimo proby ponownego polaczenia staje w miejscu. Złośliwość rzeczy martwych, nic na to nie poradzę.

Zastanawiam się nad tym, czy ten test miałby być na czas smile.gif

@krzyszbi, Argh... no niestety ale chyba nie mogę wdrożyć tej propozycji, faktycznie, mogłyby byc nadużycia, ale moderacja nie miałaby spokoju =]


--------------------
Portfolio: Vgroup.pl | athlan.pl | Test.php.pl - sprawdź się z wiedzy o PHP i ułóż własne pytania!
Pomogłem? Kliknij pod postem.
Go to the top of the page
+Quote Post
phpion
post 25.09.2007, 09:21:18
Post #6





Grupa: Moderatorzy
Postów: 6 070
Pomógł: 860
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




Hmmm w takim razie należałoby się zastanowić nad sensem prowadzenia testu bo skoro nie ma się gwarancji, że zostanie on poprawinie przeprowadzony to chyba jest to troszkę nie fair. Możnaby to porównać do ofert-zleceń-wolontariatu: jeśli projekt wypali to spoko, może będą zarobki, jeśli nie to sorry. Ewentualnie może wyłapywać błędy przerwania żądania i dla takowych wypadków nie wpisywać 0 pkt z testu. Albo wcale nie uwzględniać wyników == 0...
Go to the top of the page
+Quote Post
Sedziwoj
post 25.09.2007, 09:30:41
Post #7





Grupa: Zarejestrowani
Postów: 793
Pomógł: 32
Dołączył: 23.11.2006
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


@phpion.com
Przecież nikt Cię do robienia testu nie zmusza, do niczego oprócz własnej satysfakcji też się nie przydaje. Więc "należałoby się zastanowić nad sensem prowadzenia testu" jest bez sensu.
Tym bardziej że ja już trochę go razy rozwiązywałem, ale ani razu nie miałem tego problemu. Po prostu macie kiepskie (miałem użyć mocniejszego słowa) łącza i to jest w większości wina.


--------------------
Algorytmy w PHP, czy ktoś o tym słyszał?
Dlaczego tak mało kobiet programuje? ponieważ nie zajmują się głupotami.
Go to the top of the page
+Quote Post
Athlan
post 25.09.2007, 09:34:41
Post #8





Grupa: Developerzy
Postów: 823
Pomógł: 12
Dołączył: 18.12.2005

Ostrzeżenie: (0%)
-----


Cytat(phpion.com @ 25.09.2007, 08:21:18 ) *
Hmmm w takim razie należałoby się zastanowić nad sensem prowadzenia testu bo skoro nie ma się gwarancji, że zostanie on poprawinie przeprowadzony to chyba jest to troszkę nie fair. Możnaby to porównać do ofert-zleceń-wolontariatu: jeśli projekt wypali to spoko, może będą zarobki, jeśli nie to sorry. Ewentualnie może wyłapywać błędy przerwania żądania i dla takowych wypadków nie wpisywać 0 pkt z testu. Albo wcale nie uwzględniać wyników == 0...


0 pkt dawane jest już od razu przy starcie testu. Potem przy zakończeniu ta warość jest nadpisywana. Po co? Wyobraź sobie: 14/15 pytanie, odpowiedziałem tylko na 3... siara nie? Zamykam przeglądarke i po problemie smile.gif podchodzę do testu jeszcze raz. A tak... 0 pkt, log i tyle smile.gif

Co do przedwczesnego kończenia testu, trzeba to jakoś rozwiązać. Zastanawiam się jak, jakby ktoś na coś wpadł... proszę walić śmiało. Zasada jest prosta = nie może być tak, że da to się w perfidny sposób obejść.


--------------------
Portfolio: Vgroup.pl | athlan.pl | Test.php.pl - sprawdź się z wiedzy o PHP i ułóż własne pytania!
Pomogłem? Kliknij pod postem.
Go to the top of the page
+Quote Post
phpion
post 25.09.2007, 10:38:47
Post #9





Grupa: Moderatorzy
Postów: 6 070
Pomógł: 860
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




Cytat(Sedziwoj @ 25.09.2007, 10:30:41 ) *
@phpion.com
Przecież nikt Cię do robienia testu nie zmusza, do niczego oprócz własnej satysfakcji też się nie przydaje. Więc "należałoby się zastanowić nad sensem prowadzenia testu" jest bez sensu.

No tak, ale w takim razie powinno być jakieś ostrzeżenie, że pomimo tego, iż zna się odpowiedzi na większość pytań można zakończyć test z wynikiem 0 pkt. Troszkę glupio się czuję wiedząc, że ktoś (np. przyszły pracodawca/zleceniodawca) może przypadkowo zobaczyć moje osiągnięcia w teście. Piszesz, że to ma służyć własnej satysfakcji: zgadzam się, tylko że w obecnej sytuacji takowej nie odczułem.

Cytat(Athlan @ 25.09.2007, 10:34:41 ) *
Zastanawiam się jak, jakby ktoś na coś wpadł... proszę walić śmiało.

Może rozwiązaniem byłoby zapisywanie w bazie danych (czy chociaż w cookie) czasu, w którym user otrzymał pytanie na ekran? No i na ekranie licznik leciałby sobie swoim życiem, natomiast przy oddawaniu odpowiedzi możnaby sprawdzić czy czas z bazy (cookie) powiększony o 30 sekund jest większy od aktualnego. Jeśli tak to ok, user zmieścił się w czasie; jeśli nie to kupka. Tyle tylko, że wtedy liczyłby się również czas przesłania odpowiedzi do skryptu...
Go to the top of the page
+Quote Post
Athlan
post 25.09.2007, 10:42:27
Post #10





Grupa: Developerzy
Postów: 823
Pomógł: 12
Dołączył: 18.12.2005

Ostrzeżenie: (0%)
-----


Cytat(phpion.com @ 25.09.2007, 09:38:47 ) *
Może rozwiązaniem byłoby zapisywanie w bazie danych (czy chociaż w cookie) czasu, w którym user otrzymał pytanie na ekran? No i na ekranie licznik leciałby sobie swoim życiem, natomiast przy oddawaniu odpowiedzi możnaby sprawdzić czy czas z bazy (cookie) powiększony o 30 sekund jest większy od aktualnego. Jeśli tak to ok, user zmieścił się w czasie; jeśli nie to kupka. Tyle tylko, że wtedy liczyłby się również czas przesłania odpowiedzi do skryptu...


Łatwe do obejścia... jeżeli taki miałby być lek na problem to wdrożyłbym go przed publikacją usługi smile.gif


--------------------
Portfolio: Vgroup.pl | athlan.pl | Test.php.pl - sprawdź się z wiedzy o PHP i ułóż własne pytania!
Pomogłem? Kliknij pod postem.
Go to the top of the page
+Quote Post
phpion
post 25.09.2007, 10:54:52
Post #11





Grupa: Moderatorzy
Postów: 6 070
Pomógł: 860
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




Zapis serwerowego time() do bazy łatwy do obejścia?
Go to the top of the page
+Quote Post
Athlan
post 25.09.2007, 11:01:00
Post #12





Grupa: Developerzy
Postów: 823
Pomógł: 12
Dołączył: 18.12.2005

Ostrzeżenie: (0%)
-----


Cytat(phpion.com @ 25.09.2007, 09:54:52 ) *
Zapis serwerowego time() do bazy łatwy do obejścia?

Teraz jest zapisywany w sesji na 41 sekund. Jeżeli przedłużylibysmy czas, możnaby to było wykorzystać. Btw chodzi o to żeby przedłżyć czas na tyle, na ile jest to konieczne (timeouty + retry). Narazie nie ma żadengo bezpiecznego sposobu, zapis do zmiennej w js może być edytowany.


--------------------
Portfolio: Vgroup.pl | athlan.pl | Test.php.pl - sprawdź się z wiedzy o PHP i ułóż własne pytania!
Pomogłem? Kliknij pod postem.
Go to the top of the page
+Quote Post
phpion
post 26.09.2007, 12:32:55
Post #13





Grupa: Moderatorzy
Postów: 6 070
Pomógł: 860
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




Cytat(Athlan @ 25.09.2007, 10:34:41 ) *
0 pkt dawane jest już od razu przy starcie testu. Potem przy zakończeniu ta warość jest nadpisywana. Po co? Wyobraź sobie: 14/15 pytanie, odpowiedziałem tylko na 3... siara nie? Zamykam przeglądarke i po problemie smile.gif podchodzę do testu jeszcze raz. A tak... 0 pkt, log i tyle smile.gif

Może lepiej zrobić nadpisywanie punktów w momencie dawania odpowiedzi, a nie przy zakańczaniu testu? Wtedy, przy problemach z połączeniem, user zdobyłby tyle punktów ile poprawnych odpowiedzi udzielił do danego momentu. W sumie i to byłoby lekko nie fair ale chyba jest to lepsze rozwiązanie niż pozostawianie 0 pkt pomimo udzielenia poprawnych odpowiedzi na część pytań.
Go to the top of the page
+Quote Post
Force
post 14.10.2007, 16:17:14
Post #14





Grupa: Zarejestrowani
Postów: 55
Pomógł: 6
Dołączył: 17.05.2007

Ostrzeżenie: (0%)
-----


Albo zrobić tak, że jeżeli kogoś rozłączy to zapisać ilość poprawnych odpowiedzi łamane przez udzielonych odpowiedzi np. 4/7
Go to the top of the page
+Quote Post
bazyliszek83
post 13.03.2009, 10:23:14
Post #15





Grupa: Zarejestrowani
Postów: 81
Pomógł: 6
Dołączył: 24.07.2007
Skąd: Poznań

Ostrzeżenie: (0%)
-----


Rozwiązuje test kilka dni w tygodniu. W sumie zdarzyło mi się pierwszy raz żebym nie mógł go ukończyć. Jasnym jest że każdy robi to dla własnej przyjemności, ale nie ukrywam że jestem lekko poirytowany tym że w sumie nie z mojej winy(przekroczony czas oczekiwania...) w dniu dzisiejszym już testu nie rozwiąże do końca.

Proponowałbym ponownie zastanowić się nad tym problemem. Być może warto pomyśleć nad nieco inną formą działania testu.
Choć wg mnie można by spokojnie zaimplementować możliwość awaryjnego wznowienia testu w danym dniu. Nie niesie to tak na prawdę żadnego niebezpieczeństwa nadużyć, a samo zapamiętanie stanu testu też nie jest problemem.


--------------------
App 4 You - Aplikacje internetowe
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 28.03.2024 - 21:49