Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [HTML][MySQL][PHP]quiz,konkurs, Quiz,konkurs w php
Ekolrn
post 10.02.2011, 07:20:35
Post #1





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 10.02.2011

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


Witam. Chciałbym zrobić prosty konkurs/quiz w php. Otóż mam 100 pytań , dla każdego uczestnika konkursu będzie się wyświetlało losowe 10 pytań. Chciałbym również by był zliczany czas w jakim użytkownik rozwiązał te 10 pytań.

Jestem początkujący w tym temacie

O o chodzi: zainstalowałem xampp -a , stworzyłem sobie bazę danych oraz tebele:
ID , tresc , odp1 , odp2 , odp3 , odp4 , prawidlowaodp. Wpisałem 3 przykładowe pytania i odpowiedź


Potrzebuje kogoś kto mnie dalej popchnie ponieważ nie bardzo wiem co z tym zrobić dalej. Widziałem podobne tematy jednak tam już ludzie mieli zdecydowanie więcej dlatego zakładam nowy temat , prosze o jakiś plan co dalej oraz ew jak to dalej robic.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 8)
Daiquiri
post 10.02.2011, 10:13:02
Post #2





Grupa: Administratorzy
Postów: 1 552
Pomógł: 211
Dołączył: 7.07.2009
Skąd: NJ




1. Musisz wylosować 10 pytań (po jednym lub od razu 10, wedle uznania)
2. Musisz zbudować jakiś formularz odpowiedzi
3. Musisz obsłużyć wysłaną odpowiedź użytkownika:
3.1 Sprawdzić czy wybrana odpowiedź jest poprawna
3.2 Jeżeli tak - możesz naliczyć mu punkty za prawidłową odpowiedź

Nie wiem jak chcesz zliczać czas - po prostu posiadać informację ile to zajęło, czy czas na rozwiązywania ma być ograniczony.
Go to the top of the page
+Quote Post
hyhyhy
post 10.02.2011, 12:52:46
Post #3





Grupa: Zarejestrowani
Postów: 135
Pomógł: 5
Dołączył: 6.02.2011

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


a gdyby pobrać godzinę na stronie z testem (zostanie pobrana zaraz po wywielteniu strony), a następnie pobrać godzinę po naciśnięciu przycisku koniec, tzn potrzebne by było podwójne przekierowanie, najpeirw na stronę z pobraniem godziny po zakończeniu testu, a potem na ostateczną stronę wyników, znając już czas (różnica między 2 odczytami funkcji date()) - bo domyślam się, że ma ona wpływ na wynik.

pytania wyświetlać z bazy po id,

  1. for($x=0;$x=10;$x++)
  2. {
  3. $i = rand(15,30);
  4. SELECT * FROM DATABASE WHERE `id`=$i
  5. }


zastrzegam sobie prawo do błędów w kodzie, gdyż jestem początkujący i nei do końca opanowałem składnie mysql/php smile.gif
przy czym pojawia się tu problem, ze pytania moga sie powtorzyc - szczerze mowiac nie chce mi sie teraz myslec, mam gdzies jakis program w pascalu czy C, ktory losuje bez powtorzen - jak znajde to wrzuce mechanizm dzialania.
Go to the top of the page
+Quote Post
Ekolrn
post 10.02.2011, 13:52:41
Post #4





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 10.02.2011

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


Dziękuje wszystkie odpowiedzi chetnie przeanalizuje

czyli teraz maja ta baze danych i jedna tabelke wymiona wyzej tworze formularz pobieram dane z bazy dancyh z trescia pytania i odpowiedziami ?
Go to the top of the page
+Quote Post
Daiquiri
post 10.02.2011, 13:54:08
Post #5





Grupa: Administratorzy
Postów: 1 552
Pomógł: 211
Dołączył: 7.07.2009
Skąd: NJ




Na to wychodzi. Musisz wypełnić formularz danymi z bazy. Tak się tylko zastanawiam czy Ty wiesz co robisz... smile.gif.
Powód edycji: [Daiquiri]:
Go to the top of the page
+Quote Post
Ekolrn
post 10.02.2011, 14:43:29
Post #6





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 10.02.2011

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


Hehe wiem co robie nie wiem tylko jak to zrobić ;]

A jak zrobić by pytania były wyświetlane pojedyńczo a nie 10 naraz ?
(czyli pojawia siś pytanie klikamy odpowiedz np nr 2 , OK i pojawia sie koleje pytanie )

Ten post edytował Ekolrn 10.02.2011, 14:54:51
Go to the top of the page
+Quote Post
Daiquiri
post 10.02.2011, 15:19:33
Post #7





Grupa: Administratorzy
Postów: 1 552
Pomógł: 211
Dołączył: 7.07.2009
Skąd: NJ




Możesz to zrobić jak Ci się tylko podoba, np. jeden formularz obsługujący dane pytanie odświeża swoją zawartość po wysłaniu poprzedniej odpowiedzi.
Go to the top of the page
+Quote Post
Ekolrn
post 10.02.2011, 15:33:40
Post #8





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 10.02.2011

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


Cytat(Daiquiri @ 10.02.2011, 15:19:33 ) *
Możesz to zrobić jak Ci się tylko podoba, np. jeden formularz obsługujący dane pytanie odświeża swoją zawartość po wysłaniu poprzedniej odpowiedzi.

Prawdę mówiąc niewiele mi to dało ;/ jak by to w kodzie wyglądało ?
Go to the top of the page
+Quote Post
Daiquiri
post 10.02.2011, 15:42:31
Post #9





Grupa: Administratorzy
Postów: 1 552
Pomógł: 211
Dołączył: 7.07.2009
Skąd: NJ




No przecież ja za Ciebie kodu pisała nie będę. Możesz pobierać pytania pojedynczo, w stylu:
1. Pobieram pytanie z bazy (jeżeli pytanie != 1 to sprawdzam czy już nie padło)
2. Uzupełniam formularz
3. Czekam, aż użytkownik wybierze odpowiedź (np. zatwierdzi przyciskiem "OK")
4. Jeżeli użytkownik zatwierdził odpowiedź przechodzę do punktu pierwszego.

Ewentualnie:
1. Pobieram 10 pytań z bazy (np. do tabeli $pytania)
2. Uzupełniam formularz pytaniem nr 1 ($pytania[$i], gdzie na starcie $i=1)
3. Czekam, aż użytkownik wybierze odpowiedź (np. zatwierdzi przyciskiem "OK")
4. Jeżeli użytkownik zatwierdził odpowiedź przechodzę do punktu pierwszego zwiększając numer pytania o 1 (++$i)

Sposobów jest sporo, aczkolwiek radzę zacząć od tych najprostszych smile.gif.
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: 18.07.2025 - 02:25