_ 3.2 Kodseparation med variabel informationsmängd Uppgiften belyser hur man separerar HTML- och programkod på serversidan när man ska visa en variabel mängd information från webbserversidan. I denna uppgift vet man således inte på förhand hur mycket information som ska visas, det kan tex vara viss data ur en databas som ska visas. Mängden information är alltså i denna uppgift variabel. Vi ska nu titta på ett knep för hur man gör detta utan att ge upp vårt krav på separation av kod. __ Uppgift Gör om uppgiften [1.2 Omgivningsvariabler, 05_ass/ip2/1.2.txt] så att den svarar med HTML istället för text. Gör detta utan att blanda HTML- och webbserversideskod. __ Exempel [Ett exempel, 05_ass/ip2/3/3.2/php/example.php]. __ Tips Använd två markörer runt de ställen i HTML-dokumentet för HTML-kod som ska upprepas, exempelvis: § ... § Webbserversidesprogrammet kan då: - Läsa in all HTML-kod från en fil till en sträng - Använda funktionen §explode§ med avseende på markörerna ovan och på så sätt få tre delsträngar - Skriva ut första delsträngen - Skriva ut andra delsträngen upprepade gånger med substitution enligt uppgiften [3.1 Kodseparation med konstant informationsmängd, 05_ass/ip2/3.1.txt] (använd en temporär sträng vid substitutionen annars försvinner markörerna vid första substitutionen) - Skriva ut tredje delsträngen Exemplen ovan använder till exempel följande [HTML-mall, 05_ass/ip2/3/3.2/php/example.html] för att göra detta: § Exempel

HTML

Namn Värde
---name--- ---value---
§ Använde metoden §explode§ för att dela upp HTML-koden i tre delar: § $html_pieces = explode("", $html); § __ Hjälp ~ 05_ass/help/01.txt > [Klicka här för hjälp, helper.dsv@gmail.com, Webbutv II: 3.2 Kodseparation med variabel informationsmängd: http://people.dsv.su.se/~pierre/i/i.cgi?href=05_ass/ip2/3.2.txt] ½===system_tutoring_message===½ < ~ 05_ass/help/02.txt