Avatar billede bongo20 Nybegynder
09. september 2002 - 10:03 Der er 14 kommentarer og
3 løsninger

Form method POST

På min ASP side har jeg en form for en submit knap. I denne form har jeg noget ASP. Hvordan kan det være at ASP´en udføres når jeg loader siden og ikke først når jeg trykker på Submit ?
Avatar billede snakeeyz Nybegynder
09. september 2002 - 10:22 #1
Hej...

Din ASP kode eksekveres med det samme du kalder siden.

Først fortolkes alt ASP kode, og dernæst al HTML kode, og siden opbygges.

Håber det var svar nok
Avatar billede bongo20 Nybegynder
09. september 2002 - 10:34 #2
ok, men kan du så sige mig hvordan jeg får sendt en variabel videre til den side jeg poster til? altså når jeg trykker på submit knappen.

Jeg skal vel requeste noget på den nye side, men hvordan hænger det lige sammen ?
Avatar billede keysersoze Ekspert
09. september 2002 - 10:36 #3
fordi asp udføres på serveren og ikke på klienten. Det serveren generer er et output i html - det vil betyde at hvis du fx har lavet tjeck af forms i asp er du tvunget til at sende hele siden videre til en anden side hvori tjecket foregår

er det et formtjeck du skal foretage og det skal ske ved submit er der to muligheder - du skal benytte asp.net eller javascript
Avatar billede keysersoze Ekspert
09. september 2002 - 10:38 #4
hvis du i din form benytter metoden "get" indsættes resultatet oppe i dit adressefelt og det får du ned vha;

request.querystring("din_form")

benytter du derimod "post" i formen får du fat i resultatet således;

request.form("din_form")
Avatar billede bongo20 Nybegynder
09. september 2002 - 10:47 #5
Hvad er det man kan requeste? altså hvad bliver sendt med når man poster, er det variable værdier eller hvad ?
Avatar billede keysersoze Ekspert
09. september 2002 - 10:56 #6
du requester alt det som er skrevet i den pågældende form
Avatar billede bongo20 Nybegynder
09. september 2002 - 11:07 #7
Skulle det her ikke give et output på siden ?

<%
    Dim Type
    Type = Request.Form("form_ny")
    Response.write Type
%>
Avatar billede keysersoze Ekspert
09. september 2002 - 11:16 #8
hvis du sender vha post og din form hedder form_ny - ja
Avatar billede bongo20 Nybegynder
09. september 2002 - 11:34 #9
ok,. jeg kan nu få den til at udskrive det som jeg henter fra en textbox, men hvordan får jeg fat i en alm. variable, som er defineret på post siden.
Er det noget med request.querystring ?
Avatar billede keysersoze Ekspert
09. september 2002 - 11:37 #10
querystring er udelukkende det der står oppe i adressefeltet - så har du en variabel der skal med kan du gøre det vha querystrings eller lave en usynlig form og submitte det med
Avatar billede bongo20 Nybegynder
09. september 2002 - 11:50 #11
usynlig form,..??? kan det ikke bare komme med når jeg poster den alm. form ?
Avatar billede keysersoze Ekspert
09. september 2002 - 12:26 #12
gør det som du vil - det er jo hvad der passer sammenhængen bedst
Avatar billede oasen Nybegynder
09. september 2002 - 12:34 #13
Din_variabel = "blablabla"

Response.Write "<form action=""din_fil.asp"" name=""din_form"" method=""post"">
Response.Write "<input type=""Hidden"" name=""skjult_felt"" value=""" & Din_variabel & """>"
<input type=""submit"">
Response.Write "</form>"


Og så henter du variablen på normal vis:

Overfoert_variabel = Request.Form("skjult_felt")
Response.Write Overfoert_variabel
Avatar billede oasen Nybegynder
09. september 2002 - 12:37 #14
Alternativt...

Side 1:

Session("Din_variabel") = Din_variabel

Side 2:

Response.Write Session("Din_variabel")


Det er dog spild af serverresourcer, men som ks sagde - det er dit valg.
Avatar billede eagleeye Praktikant
09. september 2002 - 13:26 #15
Det er fodi du kun skal udføre ASP koden hvis formen er blevet post'et til side:

Se dette eks:

<html>
<head></head>
<body>
<% if Request.ServerVariables("REQUEST_METHOD") = "POST" then
  ...UDFØR KODEN
end if %>

<form action="dinside.asp" method="post">
...resten af din form...
</form>
</body>
</html>
Avatar billede mccannon Nybegynder
09. september 2002 - 21:03 #16
kan også gøre det på den her måde .:

variablen = "indhold"
Response.Write "<form action='din_fil.asp?variable=" & variablen & "' method='post'>"
response.write "<input type='text' name='inputfelt'>"
response.write "<input type='submit' value='ok'>"

IF request.form <> "" THEN
querystring = request.querystring("variable")
inputfelt = request.form("inputfelt")
END IF

response.write inputfelt & " " & querystring
outputtet .:
lad os sige du har indtastet "Indholdet er" i inputfeltet i formen, så ville du få dette output.:
Indholdet er indhold

/cannon
Avatar billede oasen Nybegynder
16. september 2002 - 08:12 #17
Skal vi lukke?
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester