Jag har skapat en sida där besökaren skall kunna dels skriva in ett ord i en texbox och dels ur en rullgardinsmeny välja ett alternativ. Mad en submit-knapp skall vetta skickas till en annan sida och tas emot med RequestForm och vara variabler i en SQL-sats. Ta och publisera en del av din kod så blir det lättare å förstå vad som inte funkar. Jag har koden hemma men jag skall försöka beskriva min fråga på ett annat sätt. Variabler skickas på samma sätt med get och post. Det som skiljer är var de skickas. Med get skickas de på request-URI:n, så här: Har kan man avgöra vilken medtod som skall användas. Det går alltså att kombinera båda metoderna på samma sida? > Har kan man avgöra vilken medtod som skall användas. Vad är en stor variabel? > Vad är en stor variabel? Javiss är det bara den knapp som användaren trycker på som får skicka, men går det att styra så att denna knapp bara skickar data från EN textbox och en annan knapp bara skickar data från en annan textbox på samma sida? Hej... "The HTTP protocol does not place any a priori limit on the length ofmethod="POST"
Det funkar när jag bara har textboxen och ovanför skriver method="POST"
När jag så skall lägga till rullgardinsmenyn får jag en massa olika fel. Jag misstänker att det här inte går att använda POST utan att det skal varar GET samtidigt som man använder Request.QueryString. Hur kan man koombinera detta? Det funkar ju inte att skriva både POST och GET på samma sida.Sv: method="POST"
Sv: method="POST"
På sidan default.asp har jag koden
<form method="POST" action="sokning.asp">
<INPUT TYPE="text" NAME="sokord">
<INPUT TYPE="submit" value="Sök">
På sidan sokning.asp finns SQL-satsen
SQL="SELECT * FROM TABELL WHERE BESKRIVNING LIKE '" & Request.Form ("sokord") & "%'"
Detta funkar som det skall. Det jag vill göra är att lägga till en rulgardinsmeny i default.asp (se nadan). Det som väljs i menyn vill jag använda som en variabel i stället för SQL-satsens TABELL. Hur åstakommer jag det?
<select name="program">
<option value="Excel">Excel
<option value="Word">Word
<option value="Access">Access
</select> Sv: method="POST"
GET /default.asp?variabel1=hello&variabel2=world HTTP/1.1
Medan de med post skickas i bodyn:
POST /default.asp HTTP/1.1
variabel1=hello&variabel2=worldSv: method="POST"
Sv: method="POST"
Tycke och smak. Men exempelvis är det inte så lämpligt att skicka stora variabler med GET eftersom GET-variabler hamnar uppe på adressraden. Vidare är det inte så lämpligt att använda GET-variabler för att posta inlägg i forum eftersom GET-variabler kan anges i en länk, dvs det går då att göra en länk som postar ett inlägg i forumet när man klickar på den.
Men däremot är ju GET-variabler bra för till exempel en sökmotor, för då kan man ju länka till ett visst sökord. Exempelvis gör http://www.google.com/search?q=asp en sökning på asp.
> Det går alltså att kombinera båda metoderna på samma sida?
Du kan inte post:a några variabler om du gör get. Men det skulle kanske kunna gå att slänga på lite variabler på URI:n när du post:ar.
I olika formulär på samma sida är det dock inget problem att ha olika, för det är ju bara ett som submittas.Sv: method="POST"
Kan man ha fler submitknappar på en sida som var och en skickar iväg data från respektive texbox?Sv: method="POST"
Återigen tycke och smak. Hur många tecken skulle du vilja ha på adressraden? Några tusen kanske, på sin höjd. Men några megabyte är definitivt stort.
> Kan man ha fler submitknappar på en sida som var och en skickar iväg
> data från respektive texbox?
Det är ju bara en som kommer att få skicka, nämligen den som användaren klickar på. Men du kan ju till och med ha flera submitknappar i samma formulär. Bara du ger dem olika namn går det bra.Sv: method="POST"
Sv: method="POST"
Finns det inte en gräns för hur mycket data man får skicka via GET?
Har för mej det.... och det var inte så himla många tecken.Sv: method="POST"
a URI. Servers MUST be able to handle the URI of any resource they
serve, and SHOULD be able to handle URIs of unbounded length if they
provide GET-based forms that could generate such URIs. A server
SHOULD return 414 (Request-URI Too Long) status if a URI is longer
than the server can handle (see section 10.4.15)."