Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revision Both sides next revision
park_quiz [2018-01-29 15:43]
Daniel Viström
park_quiz [2018-02-01 22:03]
Joakim Forsgren
Line 9: Line 9:
 ===Programmering 2=== ===Programmering 2===
   - Skapa ett GUI för att först logga in och få tillbaka token om det gick bra (sparas). \\ Har du inte gjort ditt eget rest-API kan du testa med den url som finns nedan.   - Skapa ett GUI för att först logga in och få tillbaka token om det gick bra (sparas). \\ Har du inte gjort ditt eget rest-API kan du testa med den url som finns nedan.
-  - Skapa sedan frågor med fyra svarsalternativ, det första korrekt.+  - Skapa sedan frågor med fyra svarsalternativ, det första korrekt. Kategori väljs i drop-down-meny där kategorierna fås från servern.
   - Skicka till servern med POST. \\ Har du inte gjort ditt eget rest-API kan du testa med den url som finns nedan.   - Skicka till servern med POST. \\ Har du inte gjort ditt eget rest-API kan du testa med den url som finns nedan.
   - Ta emot statuskod och visa upp om det lyckades eller inte, alternativt använd dig av undantag som genereras av GSON.   - Ta emot statuskod och visa upp om det lyckades eller inte, alternativt använd dig av undantag som genereras av GSON.
Line 20: Line 20:
  
 ===Webbserverprogrammering 1=== ===Webbserverprogrammering 1===
-I denna kurs ska vi bygga ett REST-api med två endpoints. Vi måste även designa en databas för att lagra data i. Tips kan vara att installera ett plugin i chrome för att kunna undersöka sitt API, t.ex. Restlet. +I denna kurs ska vi bygga ett REST-api med några endpoints. Vi måste även designa en databas för att lagra data i. Tips kan vara att installera ett plugin i chrome för att kunna undersöka sitt API, t.ex. Restlet. 
-  - Designa en databas för att lagra frågor och svar användare.+ 
 +Ni ska jobba utifrån denna {{ ::quiz-api.zip |kod}}. 
 + 
 +  - Designa en databas för att hantera användare, kategorier och frågor.<code mysql> 
 +-- phpMyAdmin SQL Dump 
 +-- version 4.2.7.1 
 +-- http://www.phpmyadmin.net 
 +-- 
 +-- Värd: localhost 
 +-- Tid vid skapande: 01 feb 2018 kl 21:59 
 +-- Serverversion: 5.5.59-0ubuntu0.14.04.1 
 +-- PHP-version: 5.6.23-1+deprecated+dontuse+deb.sury.org~trusty+1 
 + 
 +SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; 
 +SET time_zone = "+00:00"; 
 + 
 +-- 
 +-- Databas: `quiz` 
 +-- 
 + 
 +-- -------------------------------------------------------- 
 + 
 +-- 
 +-- Tabellstruktur `categories` 
 +-- 
 + 
 +CREATE TABLE IF NOT EXISTS `categories` ( 
 +`id` int(11) NOT NULL, 
 +  `category` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_swedish_ci NOT NULL 
 +) ENGINE=InnoDB  DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_swedish_ci; 
 + 
 +-- -------------------------------------------------------- 
 + 
 +-- 
 +-- Tabellstruktur `questions` 
 +-- 
 + 
 +CREATE TABLE IF NOT EXISTS `questions` ( 
 +`id` int(11) NOT NULL, 
 +  `category_id` int(11) NOT NULL, 
 +  `question` varchar(255) COLLATE utf8mb4_swedish_ci NOT NULL, 
 +  `option1` varchar(255) COLLATE utf8mb4_swedish_ci NOT NULL, 
 +  `option2` varchar(255) COLLATE utf8mb4_swedish_ci NOT NULL, 
 +  `option3` varchar(255) COLLATE utf8mb4_swedish_ci NOT NULL, 
 +  `option4` varchar(255) COLLATE utf8mb4_swedish_ci NOT NULL 
 +) ENGINE=InnoDB  DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_swedish_ci; 
 + 
 +-- -------------------------------------------------------- 
 + 
 +-- 
 +-- Tabellstruktur `users` 
 +-- 
 + 
 +CREATE TABLE IF NOT EXISTS `users` ( 
 +`id` int(11) NOT NULL, 
 +  `login` varchar(255) CHARACTER SET utf8 COLLATE utf8_swedish_ci NOT NULL, 
 +  `password` varchar(255) CHARACTER SET utf8 COLLATE utf8_swedish_ci NOT NULL, 
 +  `token` varchar(255) CHARACTER SET utf8 COLLATE utf8_swedish_ci NOT NULL, 
 +  `token_datetime` datetime NOT NULL 
 +) ENGINE=InnoDB  DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_swedish_ci; 
 + 
 +-- 
 +-- Index för dumpade tabeller 
 +-- 
 + 
 +-- 
 +-- Index för tabell `categories` 
 +-- 
 +ALTER TABLE `categories` 
 + ADD PRIMARY KEY (`id`); 
 + 
 +-- 
 +-- Index för tabell `questions` 
 +-- 
 +ALTER TABLE `questions` 
 + ADD PRIMARY KEY (`id`), ADD KEY `category_id` (`category_id`); 
 + 
 +-- 
 +-- Index för tabell `users` 
 +-- 
 +ALTER TABLE `users` 
 + ADD PRIMARY KEY (`id`), ADD UNIQUE KEY `login` (`login`), ADD UNIQUE KEY `token` (`token`), ADD KEY `token_datetime` (`token_datetime`); 
 + 
 +-- 
 +-- AUTO_INCREMENT för dumpade tabeller 
 +-- 
 + 
 +-- 
 +-- AUTO_INCREMENT för tabell `categories` 
 +-- 
 +ALTER TABLE `categories` 
 +MODIFY `id` int(11) NOT NULL AUTO_INCREMENT,AUTO_INCREMENT=5; 
 +-- 
 +-- AUTO_INCREMENT för tabell `questions` 
 +-- 
 +ALTER TABLE `questions` 
 +MODIFY `id` int(11) NOT NULL AUTO_INCREMENT,AUTO_INCREMENT=225; 
 +-- 
 +-- AUTO_INCREMENT för tabell `users` 
 +-- 
 +ALTER TABLE `users` 
 +MODIFY `id` int(11) NOT NULL AUTO_INCREMENT,AUTO_INCREMENT=26; 
 +</code>
   - Skapa en endpoint för att skapa en användare<code>   - Skapa en endpoint för att skapa en användare<code>
 $_POST ska innehålla följande data $_POST ska innehålla följande data