kaxigt.com

Jag skriver om webben för webben

Använda SSI – server side include

Postad: 15 oktober 2004 | PHP/ASP/SSI | No Comments
Lästid: 2 minuter

SSI kommunicerar med det serverprogram som finns hos den webläsaren där webplatsen är belägen. När du då sparar en ssi-fil måste du i filändelsen skriva .shtml eller .shtm istället för html/htm.

Det är för att servern ska veta att det handlar om en ssi-fil och inte en vanlig html-fil.

Denna post innehåller kod-snippar som du kan använda. Det är alltid bra att ta en backup av din stilmall och funktionsfil innan.

Inte alla webbhotell stöder ssi så du måste kolla upp det innan du skickar upp filen på nätet. Var bara lugn, med några enkla rader i din .htaccess-fil kan du ändra på den saken.

Viktigt!
Om du ska göra ett ssi.dokument får du inte använda samma element två gånger i samma dokument för då fungerar det inte. Kontrollera detta därför noga. Det är lätt att ha exempelvis <body> två gånger.

Kika också så inga dubblerade meta-taggar finns.

Hur fungerar då ssi?

Det som identifierar ssi och öppnar programspråket är detta attributet < !--#

Taggen som följer - <echo var > definierar den variabel - det vill säga - det data som du vill
infoga i html-dokumentet. Tecknen ="___" som åtföljs anger format och värdet på de variabler/data du vill infoga. Och de styrs av vilken variabel du lade i metataggen dessförinnan.

Med detta --> avslutar, stänger, du identifieringen av din ssi-kod.

Vi provar att lägga ut en hel kod för granskning

<!--#echo var="DATE_LOCAL" -->

Denna kod talar om för oss att vi har öppnat identifieringen av ssi i dokumentet genom detta < !--#

Värdet av datan/variabeln är att vi vill tala om vad den lokala tiden och datumet är till den som surfar in på vår sida. Därför inkluderar vi variabeln ="DATE_LOCAL".

Slutligen stänger vi koden med -->

Ok, du har gjort en helt vanlig hemsida där du vill inkludera ssi på själva hemsidan. Först döper du om den i ssi-formatet så webbservern kan läsa språket, exempelvis index.shtm. Låt oss sedan säga att du vill tala om när du uppdaterade sidan sist.

Då infogar du denna kod på en plats du tycker passar< !--#echo var="LAST_MODIFIED" -->

Vill du snygga till det lite så kan du innan koden skriva "denna sida uppdaterades den".

Fördelen med ssi är att du slipper en massa javascript.
Nackdelen är att dels stöder inte alla webbhotell denna tjänst, och dels så kan det vara svårt då man måste vara extra noggrann med sin kodning.

Här får du fler variablar och defintioner>

  • < !--#echo var="DATE_GMT"--> greenwich mean time
  • < !--#echo var="DOCUMENT_NAME"--> webbsidans namn
  • < !--#echo var="SERVER_SOFTWARE"--> talar om vilken webbserver surfaren använder
  • < !--#echo var="DATE_LOCAL"--> Anger den lokala tiden
  • < !--#echo var="LAST_MODIFIED" --> senast uppdaterad
  • < !--#include file="dokument.htm" --> om du vill koppla ett dokument till sidan
  • < !--#include virtual="/dokument.htm" --> om du vill koppla ett dokument till sidan. Denna sökväg utgår alltid från roten. Det innebär att du kan flytta dina filer som du vill.

Vilka variabler betyder vad? Några exempel

  • echo bakom denna variabel kan du bland annat infoga tid, dokumentnamn, dokumentets url, senast uppdaterad, spärra någons sida, datum
  • include om du vill inkludera text eller bild från ett annat html-dokument
  • Fsize ges möjlighet att inkludera en redan given storlek på en fil som ska infogas i htmldokumentet
  • Email möjliggör att skicka ett mail om en HTML-sida har access eller om det finns ett html-formulär.