Brugernavn:




Kodeord: Husk
Forside Forum Artikler Downloads Søg
 

Grundlæggende ASP: 3 - Systemer og Scripts

Forord

Hej,
Dette er min tredje artikel om grundlæggende ASP. Jeg vil anbefale at man læser de forrige før man giver sig i kast med denne:
1: http://rowl.dk/Articles/1
2: http://rowl.dk/Articles/8

Jeg vil i denne artikel forsøge at give jer et indblik i den store forskel det er at programmere ASP, eller et andet serverside sprog, i forhold til HTML/CSS.

System med variabler
Jeg har førhen forklaret hvad variabler er og hvordan de bruges. Dog har jeg ikke vist hvad man kan bruge dem til og hvor vigtige de egentlig er. Det er blandt andet det jeg vil vise i denne artikel.
Du har nok set andre hjemmesider med disse såkaldte forms. Felter hvorpå hjemmesiden kan modtage information om/fra den besøgende og måske endda indsætte i en database.
Det med databasen er endnu en smule indviklet men vi kan lave et simpelt script der udskriver vores navn:

side1.htm
  1. <form method="post" action="side2.asp">
  2. Indtast dit navn: <input type="input" name="navn"><br>
  3. <input type="submit" value="Send informationer">
  4. </form>
Det er desværre ikke længere muligt at se eksemplet.

Dette er vores første side i systemet. Siden hedder side1.htm fordi der overhoved ikke indgår noget asp her. Det er en ren html-formular. Hvis du vil lære mere om formularer kan denne artikel anbefales: http://www.html.dk/artikler/00011/
Det siden gør i store træk er at vise et formularfelt som brugeren kan indtaste sit navn i. Når personen så klikker på submit-knappen så bliver man sendt hen på side2.asp (som ikke findes endnu)

side2.asp
  1. Hej.<br>
  2. Dit navn er <% Response.Write Request.Form("navn") %>
Det er desværre ikke længere muligt at se eksemplet.

Ikke en særlig lang fil men den gør sit arbejde. Det den gør er at den udskriver Det der blev postet fra formen under navnet "navn".

  • <input type="input" name="navn">
Ovenstående kode viser en html-kode fra vores forrige side. Her tildeler vi input-feltet navnet "navn". Dvs. at vores side2.asp-fil udskriver hvad der er skrevet i det felt. Indholdet af feltet bliver gjort til en slags variabel.

Du kan nu prøve at åbne den første fil, indtaste dit navn og trykke på submit-knappen. Så skulle den gerne udskrive dit navn.
Det er desværre ikke længere muligt at se eksemplet.

En lille udvidelse
Vi kan, ved at lave ganske få ændringer i de forskellige filer, lave så det er muligt at få flere informationer om den besøgende.

Jeg vil lave 2 nye filer til at vise dette.

side1b.htm
  1. <form method="post" action="side2b.asp">
  2. Indtast dit navn: <input type="input" name="navn"><br>
  3. Indtast din alder: <input type="input" name="alder"><br>
  4. Indtast din nationalitet:
  5. <select size="1" name="national">
  6.     <option value="England">England</option>
  7.     <option value="Danmark" selected="selected">Danmark</option>
  8.     <option value="Tyskland">Tyskland</option>
  9. </select><br>
  10. <input type="submit" value="Send informationer">
  11. </form>
Her har vi blot tilføjet 2 ekstra formfelter. Den ene af dem er en såkaldt dropdownmenu som giver mulighed for at vælge mellem forudbestemte muligheder.

side2b.asp
  1. Hej.<br>
  2. Dit navn er <% Response.Write Request.Form("navn") %> og du er <% Response.Write Request.Form("alder") %> år gammel.<br>
  3. Desuden kommer du fra <% Response.Write Request.Form("national") %>
Her udskriver vi de 2 ekstra formfelter i sætninger så de giver mening.
Det er desværre ikke længere muligt at se eksemplet.

Flersproget
Vi kan nu ved hjælp af en if-sætning og den information vi får fra feltet "national" lave så man får den korte tekst på det sprog man har valgt.
Til det laver vi endnu 2 nye filer:
  1. <form method="post" action="side2c.asp">
  2. Indtast dit navn: <input type="input" name="navn"><br>
  3. Indtast din alder: <input type="input" name="alder"><br>
  4. Vælg din nationalitet:
  5. <select size="1" name="national">
  6.     <option value="England">England</option>
  7.     <option value="Danmark" selected="selected">Danmark</option>
  8.     <option value="deutschland">Deutschland</option>
  9. </select><br>
  10. <input type="submit" value="Send informationer">
  11. </form>
Ingen forskel her bortset fra at "action" er sat til en anden fil og lidt ændringer i landene.

  1. <% if request.form("national") = "England" then %>
  2. Hi.<br>
  3. Your name is <% Response.Write Request.Form("navn") %> and you are <% Response.Write Request.Form("alder") %> years old.<br>
  4. <% elseif request.form("national") = "Danmark" then %>
  5. Hej.<br>
  6. Dit navn er <% Response.Write Request.Form("navn") %> og du er <% Response.Write Request.Form("alder") %> år gammel.<br>
  7. <% elseif request.form("national") = "deutschland" then %>
  8. Hallo.<br>
  9. Deine name ist <% Response.Write Request.Form("navn") %> und du bist <% Response.Write Request.Form("alder") %> Jahre alt.<br>
  10. <% end if %>
Det vi gør her er at vi spørger om feltet "national" er sat til England, er det det skrives det på engelsk er det derimod sat til Danmark skrives det på dansk osv osv.

Det er desværre ikke længere muligt at se eksemplet.

Jeg håber i fik et indtryk af hvilke fantastiske muligheder man pludselig får med ASP.
I min næste artikel vil jeg vise jer hvordan man laver en gæstebog/tagwall ved hjælp af ASP og en Mysql database.

Næste artikel:
http://rowl.dk/Articles/44
Sidst redigeret 22:11 28/06/2009
Oprettet af:

ASP

Point modtaget: 0

Rate:
21:42 17/12/2005

Kommentarer

Giv din mening tilkende om denne artikel, eller læs andres.
Har du spørgsmål eller brug for hjælp til denne artikel henvises du til forummet.
Opdatere:
Wow!!
Det er jo forklaret på en måde, så selv jeg forstår det :D
;)
Sidst redigeret 19:27 - 23/12/2005
Oprettet af:
  Mail
17:55 18/12/2005
Hvad siger du wow til ?
Oprettet af:
  Mail
20:02 18/12/2005
NICE..
Oprettet af:
  Mail
01:37 02/01/2006
Den måde du gør det på er jo ekstrem besværlig ?

Side2b.asp : ( SOM DU GØR )
Hej.<br>
Dit navn er <% Response.Write Request.Form("navn") %> og du er <% Response.Write Request.Form("alder") %> år gammel.<br>
Desuden kommer du fra <% Response.Write Request.Form("national") %>

side2b.asp ( SOM JEG GØR )
Hej .<br>
DIt anvn er <% Request.form("navn") %> og du er
<% Request.Form("alder") %> år gammel.<br>
Desuden kommer du fra <% requst.form("national") %>

Det forkortes jo ekstremt meget? Du gør det svært at kode asp :S ?
Alt i alt :
<% Response.write Request.Form("navn")%> - NEEEEEEEEJ
<% Request.form("navn")%> - JAAAAAAAA
Oprettet af:
  Mail
18:37 11/01/2006
Der må jeg lige modsige dig :)
Det er rigtigt at der findes en kortere måde end den jeg bruger der, men den virker ikke den du bruger?

Hvis du blot skriver
  • <% Request.Form("alder") %>
Udskriver du det ikke til browseren og det vil derfor ikke blive vist. Du beholder det altså i "ASP-mode" som hvis du kun skulle bruge det til beregninger eller lign.

Hvis du derimod skriver
  • <%= Request.Form("alder") %>
Bliver det udskrevet fordi = er en kort form for response.write, men jeg valgte blot at vise eksemplet ud fra de redskaber jeg hidtil havde gennemgået...
Sidst redigeret 18:01 - 24/01/2006
Oprettet af:
  Mail
18:44 11/01/2006
:) :D ;) 8) :O :P :( :|
Oprettet af:
  Mail
10:05 13/01/2006
Argh, det troede jeg faktisk jeg havde gjrot.
Oprettet af:
  Mail
19:10 21/01/2006
Hehe :P
Oprettet af:
  Mail
03:33 08/03/2006
Hvorfor gør Micra det svært at kode ASP? Har han hacket sig ind på en eller anden mærkelig server, og totalt ændret på sproget? :P Efter mine PHP kundskaber kan jeg godt se, det ikke er den letteste måde at lave det på, og jeg er ingen ørn til ASP, men til gengæld går hans artikel i dybden, så skidt med at han ikke laver det på den samme, supersmarte, toptrænede måde, som du laver det på, Xuzia... ;)
Oprettet af:
  Mail
18:41 23/03/2006
Xuzia, kan man jo ikke?
Mr. Opi, hans måde er ikke smart, toptrænet osv. da det ikke virker.

<%="Hej med jer"%>

- Er nok det korteste man kan?

--- Derfor foretrækker jeg Python, da man hurtigt og let kan skrive flere linjer uden at bruge <br /> hele tiden, f.eks.

print """
Her
kan
der
stå
flere
linjer
af
gangen
"""
Oprettet af:
  Mail
16:01 28/03/2006
Du skal være oprettet og logget ind for at kommentere en artikel
Copyright © Rowl.dk v/ Michael Raagaard | 2005-12 | Alle rettigheder forbeholdes