Rapport til Kajakklubben Rapport til Kajakklubben Generelt: Frontend: Backend Admin: Backend instruktør sign up: Backend medlem sign up: Database: Oprettelse af database og SQL sætning: Konklusion: Bilag: Bilag 1: ER DIAGRAM: Mockup: Bilag 2: Opsætning af Designet: Rodmappen på Kajakklubben: Bilag 3: Sitemap: Bilag 4: Frontend navigation: Bilag 5: Backend navigation: Tidsplan: Bilag 6: Logbog: Denne rapport er skrevet af: Philomena Hing Petersen
Lærer: Thomas Tjellesen Dato: 29/03/2016 04/04/2016 1
Indledning: Jeg har fået en opgave til svendeprøven, hvor jeg skal kode en ny portal til Kajakklubben Pagaj da de gerne vil udvide deres målgruppe. De har nogle forskellige ønsker til, hvordan hjemmesiden skal udvikles. Kravspecifikationer : Generelt: Frontend: Pænt opsat kode, der er overskuelig at læse, og gennemtænkt databasestruktur En sitemap Flere brugertyper Der skal afleveres en rapport i roden af websitet som pdf fil. Client Side server validering af formularer, samt LOGIN system hvor der skiftes mellem Administrator, Instruktører og Bruger/medlemmer der henvises til de sider alt afhængig hvem der logger ind. Søgning på hjemmesiden samt paginering (afgræsning af søgningsresultat) Tidsbestemt af nyhed Kontaktformular Backend Admin: CRUD Aktivitet CRUD Bruger Angive km Nulstille alle points eller enkeltvis Backend instruktør sign up: Opdatere medlemmernes kilometer samt sætte en kajak til salg Backend medlem sign up: Medlemmer kan se sine antal km Tilmelding af medlemmer 2
Database: Oprettelse af database og SQL sætning: <?php // CONFIGURATION: // database info define('db_host', 'localhost'); define('db_user', 'brugernavn'); define('db_pass', 'password'); define('db_name', 'database navn'); function db_connect() { $con = new mysqli( DB_HOST, DB_USER, DB_PASS, DB_NAME); $con >set_charset("utf 8"); if ($con >connect_errno) { die('cannot connect to database: ('. $con >connect_errno. ')'. $con >connect_error); } return $con; }?> <?php $sql = "SELECT `id`, `headline`, `short_resume`, `desc` `dato` ". "FROM `s_pp_wi1_sde_dk`.`kk_news`". " ORDER BY `dato` ". "DESC LIMIT 5"; $result = db_connect() >query($sql); if ($result >num_rows > 0) { echo""; while ($row = $result >fetch_object()) { $id = $row >id; $headline = $row >headline; $short_resume = substr($row >short_resume, 0, 200). '...'; $desc = $row >desc; $dato = $row >dato; //$phpdate = strtotime( $dato ); echo "<div class=\"nyhedboks\">"; echo "<h3>". $row >headline. "</h3>"; echo "<h3>". $row >desc. "</h3>"; echo "<p>$row >dato</p>"; echo "<div class=\"laasmere\"><a href=\"index.php?cnt=nyheder&id=. $row >id.\">læs mere</a></div>"; echo "</div>"; } }?> 3
Konklusion: Generelt har jeg været ok tilfreds med opgaven. Det starter rimelig godt de første par dage, men så opstod der komplikationer med min CRUD og login som drillede en del. Databasen var rimelig nem at få lavet, men da jeg skulle ud trække den, så gav den nogle problemer. Dette er noget jeg skal have mere fokus på og blive bedre til at strukturere og fejlfinde. Det har været en del ændringer pga. udfordringer i CRUD, og jeg havde ikke nok tid til at færdiggjort den. Stort set alle min koder har jeg taget fra tidligere opgaver. Funktioner som jeg havde udfordringer med, såsom billed upload, breadcrumb og nyhedsbrev fandt jeg løsninger på nettet vha. CVK web. En af mine skolekammerater har hjulpet med en login system i en praktisk opgave, hvor man skifter mellem admin, medlemmer eller bruger. Det har så ikke lykkedes mig at få det til at virke i denne opgave, men jeg har forsøgt. Havde jeg haft mere tid ville jeg optimere koden. Havde det været en hjemmeside til en rigtig kunde, ville jeg gennemgå sitet med WCAG 2.0 for at sikre at det levede op til kravene samt sørge for den passede til alle internet browsere. 4
Bilag : Bilag 1: ER DIAGRAM: 5
Mockup: Bilag 2: Opsætning af Designet: 6
Rodmappen på Kajakklubben : Bilag 3: 7
Sitemap : Bilag 4: Frontend navigation : Bilag 5: Backend navigation: 8
Tidsplan: Bilag 6: Planlagte/Brugte i timer Planlagt Aktuelle Tirsdag Tag noter og få styr på hvad det skal laves og bruges 1 1 Start på tidsplan, rapportskrivning 1 1 Start på skitse af designet med navigation 2 2 Skitse på sitemap 1 1½ Onsdag Start på få styr på rodmappen og grunddesign på HTML og CSS Frontend 1 2 Opsætning af databasestruktur. 2 4 Torsdag Opret bruger og Log ind 3 2 CRUD på Administration 2 4 Fredag Konvertering til dynamisk sider til PHP 7 1 Kontakt & validering af formular 2 1 Back end 1 4 Mandag Opsummering på hele opgaven 3 5 Afslutte opgaven, rapportskrivning og aflevering 2 ½ 9
Logbog : Tirsdag D. 29 03 2016. Eksamensprojekt startet i dag. Jeg startede med at læse igennem pojektet og fået styr på hvilke krav der stilles og få styr på min rodmappe. Jeg oprettede min rapport(i WORD) som jeg kan udfylde undervejs. Jeg har brugt Workbench(værktøj) til at lave min ER diagram og Pencil til at lave min Sitemaps og Design. Onsdag D. 30 03 2016. Jeg fik lavet min DB (Database) struktur. Torsdag D. 31 03 2016. I dag fortsatte jeg med Admin (CRUD). Og startet med at lave udtræk i forbindelse med PHP funktioner på kryds og tværs. Jeg har stødt på en del udfordringer på min CRUD, så jeg har valgt at arbejde videre på nogle af siderne i min frontend side efter nogle timer. Fredag. D. 01 04 2016. Idag har jeg arbejdet videre på de funktionelle, CRUD og de manglende underside på frontend. Mandag. D. 04 04 2016. Idag har der været fejlfinding og optimering af opgaven. Finpudsning og fokus på de udfordringer jeg har haft i løbet af eksamens ugen, og prøve at lave så meget som jeg kunne nå af det der mangler, samt færdiggøre min rapport. 10