Webbprogrammering, grundkurs 725G54
Lab 4, 5 ERD PHP + MySQL Återblick
Idag Sessions PHP och MySQL för samband Lab 6 725G54: Genomgång projektuppgift Avstämning av kursmål
Om sessions På IDA måste ni göra session_save_path('dir) Dir ska vara katalog där PHP (world/ others) får läsa och skriva Måste även köra session_start() innan <!DOCTYPE Testa och felsök med utskrifter av vad som läggs in och kan tas ut från $_SESSION
Problem med databas Testa att ange host till localhost.
Lab 6 Filmdatabas Filmer, produktionsår och skådespelare Med hjälp av PHP måste ni kunna lägga till och hålla ordning på samband mellan två entiteter (och tre tabeller) Hindra dubletter.
Person id namn telefon 6 Rocksteady 555-2222 54 Beebop 555-2222 Hus gata nummer Storgatan 2 Rydsvägen 240 ägare 54 54 id namn telefon gata nummer Person 1 N äger Hus
Person id name phone 6 Rocksteady 555-2222 54 Beebop 555-2222 House id street number 1 Storgatan 2r 2 Rydsvägen 240 owner-id 54 54 Kan skrivas ut med php-loop från databas UPDATE House SET owner = 54 WHERE house-id = 2; Query sätts ihop utifrån svar i formulär
Person Hus id namn telefon 6 Rocksteady 555-2222 54 Beebop 555-2222 gata nummer Storgatan 2 Rydsvägen 240 ägare id 16 6 & 854 Äger person-id hus-id 6 8 54 8 54 1 Dålig lösning id id namn telefon gata nummer Person N äger M Hus
Person House id name phone 6 Rocksteady 555-2222 54 Beebop 555-2222 street number Storgatan 2 Rydsvägen 240 id 1 8 Owner person-id house-id 6 8 54 8 54 1
Bra funktioner insert_id - returnerar id för senaste lagring (för uppkoppling) num_rows - returnerar hur många rader som finns i resultat av query Finns fler på php.net
Lab 6 Filmdatabas Filmer, produktionsår och skådespelare Med hjälp av PHP kunna lägga till, ändra och hålla ordning på samband mellan två entiteter (M:N - tre tabeller) Hindra dubletter och felaktiga inmatningar med PHP och jquery.
Projekt Individuellt, 2,5hp, U/G/VG Egen databasdriven webbplats T ex databas om böcker, fotoalbum, blogg, adressbok, bokningssystem, presentation av företag/förening Dokumentation av arbete och tidsåtgång Funktion för att lägga till, ändra och ta bort.
725G54 Projektexempel
725G54 Projektexempel
725G54 Projektexempel
725G54 Projektexempel
Projekt - tid Skissande, mock-up, 2-4h Från skiss till HTML och CSS, 16-32h Design och implementation av CMS, PHP +MySQL och JS, 24-48h Dokumentation, 4-8h Totalt ~65 h.
Projekt - examination Krav för G För VG finns extra krav varav två måste vara uppfyllda. U, G eller VG. Ej kompletteringar. Ska vara individuellt arbete. Jämförelser av källkod och lösningar görs.
Projekt - VG För VG ska 2 av följande lösas: Databas: hantera 4 entiteter och samband via webbplats Design: RWD (3 bredder), SEO, bildoptimering, jquery-validering Säkerhet: Kontohantering, inloggning med session, krypterad lösenordshantering.
Deadlines Laborationer, 19/5 - sista dag för redovisning (Projekt bör påbörjas innan datum ovan.) Projekt, har två redovisningstillfällen. Betyg påverkas ej av vilket tillfälle. 7/6, 23.59 11/8, 8.00 Senare redovisningar hänsvisas till nästa kursomgång (VT-15) och eventuellt annan uppgift.
Projekt - frågor? Maila jakob.bandelin@liu.se Ämne: "725G54 - Projektfråga"
Färdiga CMS Använd ej till projektet: Textpattern, Wordpress, Joomla, Drupal, Mambo, etc Ofta PHP+MySQL (Det ni lär er i kursen och under projektet kan användas för att modifiera och anpassa befintliga CMS. Kursens mål ska/kan inte examineras på användning av verktyg för webb-publicering.)
Frameworks/verktyg Använd ej till projektet labbar eller projekt: CodeIgniter, RubyOnRails, etc Man ska ha skrivit (nästan) all kod för projektet själv. jquery - OK Bootstrap - OK
Upphittad/lånad kod Gäller för laborationer och projekt. Kod från forum, böcker, php.net, bloggar enstaka rader - OK Kod från föreläsningsexempel - OK Gör alltid en kommentar i koden om var ni fått den i från Är ni osäkra på vad som gäller fråga Det får aldrig se ut som om ni redovisar kod ni inte skrivit själva som eget arbete.
Handledning Det är salar bokade med handledare Mer arbete/tid än schemalagd krävs.
Kursinnehåll Avstämning
Under kursens gång utvecklas studentens kunskaper och färdigheter i praktisk webbprogrammering och webbdesign genom fokusering på följande områden: allmänt om Internet och webben HTML, CSS, layout, och formulär grundläggande webbprogrammering i PHP: datatyper, funktioner, filer, databaskoppling grundläggande databaser: ER-modellering, datatabeller, SQL (MySQL)
Fö 1 - HTML HTML FTP Webbserver
Fö 2 - CSS Färger - #F00, #999 Boxmodellen Separation av innehåll och presentation
Fö 3 - jquery jquery Bootstrap
Fö 4 - PHP Serverskript Formulär Validering av data Säkerhet
Fö 5 - MySQL SQL, MySQL PHP + MySQL
Fö 6 - MySQL, 2 SQL, MySQL PHP + MySQL
Screencasts ERD, normalisering jquery Validering
Kursmål Avstämning
Exemplifiera problem och möjligheter med att använda en webbaserad applikation Statiska sidor Dynamiska sidor - Serverskript - Klientskript Databaskopplingar Användbarhet Sökmotorer Frameworks RWD CMS Tillgänglighet
Förklara fördelarna med att separera strukturbeskrivning (HTML) och layout (CSS) för dokument vid publicering på WWW Tillgänglighet Sökmotorsoptimering Enklare att underhålla Enklare att ändra
Implementera en fungerande databasdriven webbplats genom att använda HTML, CSS samt grundläggande funktioner i PHP och SQL (MySQL) Gästbok/klotterplank Filmdatabas Projekt
Designa ER-modeller för en enkel databas Lab 5 Filmdatabas Projekt
Tack och lycka till!