Avatar billede Syska Mester
09. april 2005 - 20:58 Der er 30 kommentarer og
3 løsninger

GET & POST, hvad for en skal man bruge?

Hej Eksperter,

Jeg er ved at lave en hjemmeside i php, men jeg er i tvivl om hvad forskellen er på POST og GET, og hvad for en der er bedst at bruge i mine forms på siden?

Så det kunne være helt vildt fedt hvis der var en der kunne give en forklaring på det....

Det eneste jeg lige har fundet er: http://en.wikipedia.org/wiki/HTTP#HTTP_request_methods men det siger mig ikek specielt meget.....

Så kom frisk gutter og gutinder.....

// ouT

P.S Ved ikke om det er her er den korrekte katagori, men så må i jo lige sige til....
Avatar billede alister_crowley Nybegynder
09. april 2005 - 21:00 #1
GET bruges til at hente infor fra Querystring som f.eks

www.side.dk/?navn=buzzz

<?php
echo $_GET['navn'];
?>

Vil udskrive buzzz

POST er til hente info fra <form> hvor action="post" , det er smartere end GET, fordi det ikke fylder i adresselinjen.
Avatar billede alister_crowley Nybegynder
09. april 2005 - 21:00 #2
Asp eksempel

<%
Response.write Request.Querystring("navn")
%>

Vil udskrive buzz på den url i forrige post :)
Avatar billede busschou Praktikant
09. april 2005 - 21:01 #3
forskellen er hvor meget du kan sende
http://www.w3schools.com/tags/tag_form.asp
Avatar billede miss-g Seniormester
09. april 2005 - 21:02 #4
Selvom jeg ikke helt forstår forskellen selv - kan jeg da lige læse op fra en bog:

GET-metoden indsætter et begrænset antal navn/værdi-par sidst i et CGI-scripts URL-adresse.  Du har måske før set URL-adresser, der har fået tilføjet ekstra tegn. Disse tegn sendes til behandling på serveren.

POST-metoden sender sammen med forskellige andre oplysninger et ubegrænset antal kodede navn/værdi-par til scriptet.

SLUT
Avatar billede busschou Praktikant
09. april 2005 - 21:05 #5
forskellen er som beskrevet i mit link og som alister siger om det sendes over url eller bagved. Men også at hvis der er over 100 karakterer så kan man ikke benytte get så skal man benytte post... se link
Avatar billede Slettet bruger
09. april 2005 - 21:14 #6
http://www.w3schools.com/tags/tag_form.asp
.............................................

<form action="form_action.asp"
method="get">

First name:
<input type="text" name="fname" value="Mickey" />
<br />
Last name:
<input type="text" name="lname" value="Mouse" />
<br />
<input type="submit" value="Submit" />

</form>

<p>
If you click the "Submit" button, you will send your input to a new page called form_action.asp.
</p>

.....................
The HTTP method for sending data to the action URL. Default is get.
method="get": This method sends the form contents in the URL: URL?name=value&name=value. Note: If the form values contains non-ASCII characters or exceeds 100 characters you MUST use method="post".

method="post": This method sends the form contents in the body of the request. Note: Most browsers are unable to bookmark post requests.
Avatar billede olebole Juniormester
09. april 2005 - 21:23 #7
<ole>

Når du request'er serveren med metoden GET, sendes alle variabler med i URI'en.

Request'er du derimod med metoden POST, sendes alle variabler til serveren i form af datapakker, hvis indhold ikke umiddelbart synligt brugeren.
Grænsen for, hvad du kan medsende af data er som sagt betydeligt større ved POST-requests - og det er vanskeligere at 'hacke' sig til data for udenfor stående.

Grænsen for GET-requests er dog langt højere end 100 bytes ... det har W3Schools fået helt forkert i halsen. Det har de med en del ting, men dette er dog en af de mere grumme  :)

/mvh
</bole>
Avatar billede busschou Praktikant
09. april 2005 - 21:25 #8
ole >> hvor meget kan man så sende ved du det?... troede generelt at den side fortalte "sandhedder"?
Avatar billede olebole Juniormester
09. april 2005 - 21:36 #9
W3Schools er lavet af en privat nordmand og har ikke noget med W3C at gøre. Det er et rimelig godt site, men er ikke altid helt rigtig på den  :)

Der er ingen officiel grænse for en GET-requet's størrelse - det afviger en hel del fra browser til browser. IE har en grænse på omkring 2.000, mens den i FF ligger på ca. 8.000.
Du kan evt. teste flere browsere, end jeg lige gjorde med dette php-dokument:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    <title>TITLE</title>
<style type="text/css">
body, html {
    height: 100%;
    margin: 0px;
}
</style>
<script type="text/JavaScript">
function fillField(f) {
    var s = "";
    for (var i=0; i<parseInt(f.len.value); i++) s += "O";
    f.gnu.value = s;
}
</script>
</head>
<body>

Længden af strengen: <?=strlen($_GET["gnu"])?>
<br>
<form action="" method="get" onsubmit="fillField(this)">
<input type="hidden" name="gnu"><br>
<input type="text" name="len"><br>
<button type="submit">TESTING</button>
</form>

</body>
</html>
Avatar billede olebole Juniormester
09. april 2005 - 21:37 #10
Tast et tal i boksen og tryk på knappen ... så sendes en GET med det indtastede antal karakterer
Avatar billede busschou Praktikant
09. april 2005 - 21:42 #11
Vidste godt at siden ikke har direkte tilknytning til W3C - vidste så ikke det var en nordmand :o/

Anyway vil du trods alt ikke mene at det er et af de bedre sites omhandlende det meste omkring html,xml,css mm?
Eller kender du andre sites som kan hamle op med det? bare af nysgerrighed
Avatar billede olebole Juniormester
09. april 2005 - 21:47 #12
W3C er uden sammenligning det bedste - og det sted, jeg selv bruger  :)
Avatar billede busschou Praktikant
09. april 2005 - 21:51 #13
ok blev jo også næsten nervøs fordi jeg selv bruger det...men man lærer jo alligevel nyt hele tiden :o)
Avatar billede Slettet bruger
09. april 2005 - 21:57 #14
Olebole< W3Schools'manden skriver udover 100 character (1 character=8 bytes=64 bit)eller skal jeg i arkivet og finde min gamle Z80 bog - for at opfriske min hukommelse, alderen trykker men det der ligger længere tilbage i tiden husker jeg bedre end det dagsaktuelle.
...........................
Udover W3C bruger jeg også disse

http://css.maxdesign.com.au/index.htm

http://www.meyerweb.com/

http://www.w3schools.com/default.asp
Avatar billede olebole Juniormester
09. april 2005 - 22:35 #15
ibtage >> jeg er helt med på, hvad du mener, men det kan ikke være der, 'køteren' ligger begravet  :)
'100 characters' betyder '100 tegn' og IE sender som sagt ca. 2.000 tegn - og Moz ca. 8.000 - uden at brokke sig.

Normalt fraråder man at sende større mængder data med GET - og jeg tror, den grænse, man oftest ser nævnt, ligger omkring 1.000 tegn. Ikke nævnt som en fast grænse, men som en tommelfingerregel.
Jeg forestiller mig, W3Cschool-mandens angivelse også er et forsøg på at fraråde store datamængder - men jeg er ikke enig i, det er nødvendigt med så stor sikkerheds margin.

Specielt er jeg ikke vild med den sikkerhed, hvormed hen besksriver grænsen. Dels nævner han ikke, at der ikke forligger en officiel grænse og at browserne ikke er enige, dels understreger han med versaler, at man SKAL bruge POST ved datamængder over 100 tegn.

Det finder jeg knapt så heldigt  :)
Avatar billede Slettet bruger
09. april 2005 - 22:39 #16
olebole>>Helt enig
Avatar billede roenving Novice
10. april 2005 - 01:04 #17
Øv, det oldgamle link, jeg havde til msdn om længden af urler, er desværre forældet, men deri beskrives det, at der er en grænse på et eller andet omkring 2144 tegn, altså ikke direkte relateret til de tal vi kender fra potenser af 2, som ellers ofte er gældende i den slags sammenhænge ...

-- men beskeden er jo også klar i forvejen: Brug method="post", hvis du er det fjerneste i tvivl om, at du kommer over grænsen (og husk at http:// tælles med i længden, og at relative stier afsendes i fuld længde !-)

-- og get-metoden skal kun bruges, hvis du overhovedet ikke er i tvivl om, at hvemsomhelst må se data, som sendes !o]
Avatar billede olebole Juniormester
10. april 2005 - 01:46 #18
Google påstår hårdnakket, der kunne være tale om dette dokument:
    http://support.microsoft.com/kb/q208427/
Avatar billede roenving Novice
10. april 2005 - 01:49 #19
Kerneinfo er nok helt korrekt, men mit gamle link var til en artikel, hvor det var lidt mere specificeret !-)
Avatar billede Syska Mester
12. april 2005 - 15:14 #20
well, må siges at alle her har tilføjet bedre viden til mig omkring det, men da jeg gerne vil holde stien ren, tror jeg at jeg hopper på POST, da der kan være rimeligt med data, beskrivelse etc. som måske kan overstige hvis man skrive meget, og andre ting der spiller ind, så er det nok nemmest at hodle sig til en af de 2, så folk ude fra ikke bare kan smide en string ind i URL'en...

// ouT

P.S: Har ikke lige noget overblik over hvem der har svaret hvad, men smid et svar og jeg vil dele point mellem jer.....
Avatar billede busschou Praktikant
12. april 2005 - 15:26 #21
Jeg blev også selv en del klogere takket været Ole så jeg springer pænt points over
Avatar billede Syska Mester
12. april 2005 - 22:18 #22
resten?
Avatar billede Slettet bruger
12. april 2005 - 22:58 #23
ikke til mig
Avatar billede olebole Juniormester
13. april 2005 - 02:14 #24
Jeg kunne jo heller ikke huske browsernes nøjagtige grænser, så jeg blev også klogere af at deltage i debatten og teste lidt. Vi kom netop frem til resultaterne ved en god gang ping-pong ... kom nu til fadet, drenge  ;o)
Avatar billede busschou Praktikant
13. april 2005 - 07:27 #25
Jamen hvis ingen andre er friske sååå :o)
Avatar billede Syska Mester
14. april 2005 - 20:44 #26
vel, var det alle, ellers lader jeg den lige stå 1-2 dage endnu, ellers fyrer jeg point ud til de 2 som har svaret nu.

// ouT
Avatar billede miss-g Seniormester
16. april 2005 - 19:30 #27
Jeg springer også over, for jeg ved ikke noget om det *G*
Avatar billede Syska Mester
20. april 2005 - 22:28 #28
ARGHHHHHHHHHHH, kan stadig ikke accepetere, well, det kommer nok til at virke engang
Avatar billede roenving Novice
21. april 2005 - 00:22 #29
Du skal huske at markere navne i boksen ude til venstre, når du vil acceptere !-)
Avatar billede Syska Mester
28. april 2005 - 22:43 #30
vil give begge point... så skal jeg jo dele dem, men det virker af lort
Avatar billede Syska Mester
28. april 2005 - 22:45 #31
ARGHHHHHHHHHHHHH
Avatar billede busschou Praktikant
29. april 2005 - 06:19 #32
Du markerer bare alle navnene og klikker ok
Avatar billede Syska Mester
29. april 2005 - 09:37 #33
lorte system, men deres avanceret virker stadig ikke, men den måde med at markere dem under std gør, lorte system.... fix det admins eller hvem der nu står for det
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

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