Przetwarzanie danych tekstowycho do struktury JSON
Jak z pliku tekstowego zrobić QUIZ / grę tRPG
Przygotowanie
- Uczeń posiada serwer Node.js
- Uczeń potrafi importować i używać zewnetrznych bibliotek
- Uczeń wie jak otworzyć plik i zapisać do niego informacje
Dostosuj przykładowy formularz na potrzeby zadania
Nie odnaleziono pliku!
Odbierz z formularza dane i zapisz je w bazie danych.
Wybierz baze danych dla zadania: SQLite lub MySQL i przygotuj strukturę tabeli:
identyfikator Auto_incr. | Nazwa gracza | Osiągnięty poziom | Zebrane punkty |
Wykonaj zadanie wg. wytycznych:
- zbuduj strukturę danych dla tabeli
- zbuduj formularz pasujący do struktury tabeli
- odbierz dane z formularza
- opracuj odpowiednie zapytania SQL do Zapisu w/w danych do BD
- opracuj odpowiednie zapytania SQL do Odczytu w/w danych z BD
- zbuduj tabelę wyników (tzw. Leader board) z zebranych wyników
Plik CSV (wersja A)
"Punkty do zdobycia","Odpowiedź","Pytanie"
1,"const fs = require('plikjs')","Podaj polecenie do importu pliku/biblioteki o nazwie `fs` do zmiennej o tej samej nazwie"
2,"module.exports = {a:5,b:10,c:15}","Podaj kod pozwalający zwrócić tablicę dwóch elementów z pliku"
1,"fs.readFileSync('plik.txt','utf-8',function(err,cont){})","Podaj polecenie odczytania pliku `plik.txt` z wstrzymaniem programu do zakończenia odczytu"
Plik tekstowy (wersja B)
/* Stoisz na rozdrożu bez drogowskazu, gdzie idziesz?*/
{"a":"w lewo","b":"w prawo","c":"zawracam"}
/* Spotykasz na swojej drodze groźnego Ogra, co robisz?*/
{"a":"walczę","b":"próbuję go oczarować swoimi atrybutami","c":"uciekam"}
/* Znajdujesz na swojej drodze skrzynię, co robisz?*/
{"a":"otwieram","b":"zabieram ze sobą","c":"zostawiam"}
- realizacja programu terminalowego lub webowego
- odczytanie wybranego pliku tekstowego (w formacie CSV lub plik w własnej, oryginalnej strukturze do przetworzenia)
- przetworzenie odczytanych z pliku danych do formatu obiektu JavaScript (JSON)
- do zmiennej odbiektu danych, dla każdego wiersza należy dodać nową właściwość/klucz: pytanie użyte, oraz dobyte punkty
- przetwarzanie gotowego obiektu JS: losowanie kolejności pytań i wyświetlanie pytania
- odczytanie udzielonej odpowiedzi w polu tekstowym (A) lub zbudowanie wyboru możliwych odpowiedzi (B) i odczyt wybranej
- użycie każdego pytania, aż do ich wyczerpania, a na końcu wyświetlenie zdobytych punktów
- zapisanie zdobytych przez gracza punktów w pliku (tekstowym-same punkty lub jako obiekt JSON)
- połącz punkt 1 i 3 w komplementarne zadanie (formularz rozpoczecia gry, rozgrywka, podsumowanie-wyniki)
- przygotowanie "instalatora" dla produktu (lub instrukcji uruchomieniowych)