Gör en enkel ASP-gästbokEn gästbok där besökarna kan skicka en hälsning och visa länk till hemsidanHär kommer du att lära dig att göra en enkel men funktionell gästbok. Allt som skrivs i gästboken sparas i en vanlig textfil. Du behöver alltså inte kunna hantera en databas för detta. Observera att funktionen kräver tillgång till ASP-server. Filerna kan inte köras på en vanlig server utan ASP. Varför göra en egen gästbok?Det finns påtagliga fördelar med en egen gästbok framför de flesta av de gratisvarianter som finns att hämta på Internet.
Just den här skolan är mest till för att visa att man kan göra en egen gästbok och hur det kan göras. Gästboken är mycket enkel. Det gör att den saknar en del funktioner som man kanske skulle önska sig:
Filer som du behöverDu kommer att behöva sammanlagt tre filer:
Till att börja med kan du placera alla tre filerna i samma mapp - det gör att det blir enklare att kontrollera i din Personal Web Server (Windows 98) eller Internet Information Server (Windows XP Pro och Windows 2000) att allt fungerar. TextfilenUnder Inetpub\wwwroot (i din PWS/IIS) skapar du en ny mapp som du kallar "gestbok". Öppna Anteckningar eller den txt-redigerare du normalt använder och skapa en ny fil. Gör tills vidare ett enda mellanslag och spara filen som gester.txt i den nya mappen. Senare skall vi fiffa till den här filen en aning, men just nu behöver den bara ett mellanslag. Gör ytterligare två filer – default.asp och skriv.asp – och spara dem i samma mapp. Nu har du allt du behöver för att börja skriva koden. Först skall jag helt kort förklara hur det fungerar. Så här går det tillBesökaren kommer till sidan default.asp, som visar ett formulär och en lista med alla tidigare inlägg. Det nyaste inlägget visas överst i listan. Besökaren fyller i formuläret och klickar på "Skicka". Nu kontrolleras att formuläret är rätt ifyllt. Därefter tas uppgifterna från formuläret med till filen skriv.asp, där det nya inlägget först kontrolleras – det skall finnas ett namn och ett inlägg, och inlägget skall inte börja med html-kod – och sedan sparas i samma fil som de tidigare inläggen. Sedan öppnas en uppdaterad version av sidan default.asp, och besökaren ser sitt eget inlägg överst i listan. Det här låter enkelt men kräver en del kodskrivande. Du kan kopiera all kod direkt från den här skolan. Här kan du se hur det fungerar i praktiken. Gästboken öppnas i en egen sida, som du bara behöver stänga för att komma tillbaka hit. Börja med kodenBesökarsidan default.asp – HTML-kodenFörst av allt skall du i filen default.asp skriva in den grundläggande HTML-koden. Ta med allt sådant som du normalt har på alla sidor. Glöm inte din eventuella stilmall. Anpassa värdena efter dina egna behov. Den här "mallen" skall fyllas med en hel del annat, men spara den först som default.asp.
Formuläret Nästa steg blir formuläret. Placera det i tomrummet under rubriken Gästbok. Koden ser ut så här – jag förklarar under koden.
Förklaringar till formuläret Formuläret har fått ett namn, frmgestbok. Vilket annat namn som helst duger, men det är praktiskt att använda "prefixet" frm på formulär som skall anropas av ASP-skript, eftersom man då lätt ser att det är just ett formulär som anropas. Undvik att använda å, ä, ö eller mellanslag i namn som skall utnyttjas i ASP-skript. Formuläret har också en metod – post – och en action. Den senare säger att uppgifterna från formuläret skall tas med till sidan skriv.asp. Slutligen innehåller FORM-raden en händelsehanterare – onSubmit – som anropar ett javaskript. Vi återkommer till detta alldeles strax. I formuläret finns vidare tre INPUT-rader och en TEXTAREA. Samtliga har fått unika namn, vilket är viktigt litet längre fram. Slutligen finns en knapp, på vilken det står "Skicka". Titta på de tre INPUT-raderna av typen TEXT. Alla tre innehåller händelsehanterarna onFocus och onBlur, och alla har ett defaultvärde (VALUE). Dessa VALUE kommer vi att utnyttja. Genom att använda händelsehanterarna på det här sättet, behöver vi inte skriva förklarande texter till de tre textraderna. Denna text syns redan i respektive rad när sidan laddas. När besökaren klickar i en rad, försvinner den ursprungliga texten. Om han klickar utanför raden utan att skriva någonting, kommer ursprungstexten tillbaka. Den text som finns i respektive rader och textarean när besökaren klickar på "Skicka", följer med till först javaskriptet och sedan sidan skriv.asp. JavaskriptetVi vill inte att besökarna skickar inlägg utan att ange något namn, eller utan att skriva något i textarean. Därför skall vi kontrollera att det finns något skrivet i dessa delar av formuläret. Däremot gör vi inte denna kontroll när det gäller e-postadress eller hemsida – det bör ju stå var och en fritt att avgöra om han vill ange dessa uppgifter eller inte. Med javaskriptet skall vi kontrollera att det inte står "Skriv ditt namn" i första raden och att textarean inte är tom. Därför skickar vi iväg uppgifterna till javaskriptet i sidans HEAD-element, innan de får fortsätta till skriv.asp. Den här första kontrollen är mycket enkel – på sidan skriv.asp kommer vi senare att göra en grundligare kontroll, en så kallad server side-validering. Det beror på att en besökare som har kopplat bort javaskriptfunktionen i webbläsaren lätt går förbi den enkla kontrollen via javaskript. Att ta sig förbi kontrollen som sker på servern är betydligt svårare. Javaskriptet ser ut så här – placera skriptet i HEAD-elementet, till exempel omedelbart före den avslutande HEAD-taggen:
Förklaringar till javaskriptet När besökaren klickar på "Skicka" vaknar formulärets onSubmit="return kollaFormulaer();" till liv. Först kontrolleras att formulärets "mitt_namn" inte innehåller "Skriv ditt namn". I så fall öppnas en meddelanderuta som uppmanar besökaren att skriva in sitt namn. När besökaren stänger denna ruta får formulärets namnrad fokus. Sedan undersöks om textarean "mitt_inlagg" är tom. I så fall öppnas en annan meddelanderuta och när denna stängs har formulärets textarea fått fokus. Om både namnraden och textarean är ifyllda (det räcker i och för sig med ett mellanslag) går kodkörningen tillbaka till formuläret och fortsätter därifrån till sidan skriv.asp. Spara default.aspDärmed är all HTML-kod färdig i sidan default.asp. Vi skall fylla på med ASP-kod litet senare, men för att det hela skall bli lättare att förstå fortsätter vi först till filen skriv.asp. Glöm inte att spara filen default.asp. | ||||
Nästa: Filen skriv.asp >> | ||||
© SupportData.Net |