Avatar billede tipsen Nybegynder
01. maj 2003 - 22:39 Der er 17 kommentarer og
1 løsning

$_REQUEST vs. $_POST & $_GET

Hej eksperter

Jeg sidder med følgende kodestump i starten af et script:

if(isset($_GET['cid']))      $cid = $_GET['cid'];
elseif(isset($_POST['cid']))  $cid = $_POST['cid'];
else                          $cid = 0;

som sørger for at variablen $cid er ordentligt initialiseret.

Jeg har overvejet bare at erstatte ovenstående med:

$cid = isset($_REQUEST['cid']) ? $_REQUEST['cid'] : 0;

Er der nogle "issues" jeg skal være opmærksom på i forb. med denne omskrivning?
Avatar billede Slettet bruger
01. maj 2003 - 22:43 #1
Kun hvis du har nogle sessions eller cookies der hedder det samme ;)
Avatar billede melange Nybegynder
01. maj 2003 - 22:48 #2
njaa...det må næsten være en religionssag :)

Der kan vist ikke være nogen tvivl om at koden med $_REQUEST er kortest, og mest behagelig, men personligt bryder jeg mig ikke om $_REQUEST, da den minder mig om dengang register_globals var sat til "on" som standart. *gys*
Avatar billede schaefner Juniormester
01. maj 2003 - 22:49 #3
POST og GET er kortere at skrive end REQUEST ;)
Avatar billede erikjacobsen Ekspert
01. maj 2003 - 22:49 #4
Ved du ikke om den kommer fra en post eller en get ?
Ellers er det korrekt, at det er en nemmere måde.
Jeg vil dog ikke vædde med dig om at $_REQUEST fortsat
findes i PHP5 (..PHP6..7..8)
Avatar billede Slettet bruger
01. maj 2003 - 22:56 #5
hehe...findes vi når PHP8 frigives? ;)
Avatar billede melange Nybegynder
01. maj 2003 - 23:10 #6
el_barto << det gør vi vel nok. Dog sidder vi på plejehjem, gnubber os i skægget mens vi snakker om gode gamle dage hvor børn sad hjemme ved computeren og programmerede i stedet for alt det der "Virtual reality"-pjat :)
Avatar billede erikjacobsen Ekspert
01. maj 2003 - 23:37 #7
Og vore børnebørn sidder ved gyngestolen og spørger undrende:
"Bedstefar, de andre børn i børnehave siger at i gamle, gamle dage, blev
formularfelter i HTML direkte til $-variabler på næste side i PHP.
Det var da skørt."

Og vi nikker og fortæller andre skrøner.
Avatar billede tipsen Nybegynder
02. maj 2003 - 00:10 #8
Erik: Variablen kan stamme fra både $_GET og $_POST!
Avatar billede tipsen Nybegynder
02. maj 2003 - 00:11 #9
Hvad er prioritetsrækkefølgen i de arrays som $_REQUEST bruger?
Avatar billede erikjacobsen Ekspert
02. maj 2003 - 00:15 #10
Du er inde i de samme problemer som med $navn-variablerne,
der kunne stamme fra post,get,cookies ... det er ikke
til at huske rækkefølgen. Hvad med at lave en bedre,
disjunkt, navngivning.
Avatar billede tipsen Nybegynder
02. maj 2003 - 01:09 #11
Problemet er, at det er nogle variable som kan stamme fra alm. links ($_GET) eller fra formularer ($_POST) - dvs. normalt stammer de fra links, men hvis en form submittes, skal variablene "følge med" formularen og så vidt jeg husker er det en skidt ide at have variablene med i url'en i en action - så hellere nogle hidden-felter og method="post"
Avatar billede erikjacobsen Ekspert
02. maj 2003 - 09:22 #12
Det er ikke specielt skidt at have en
  <form method="post" action="saaerdetfredag.php?weekend=ja">
og så yderligere felter nede i formen ... hvis der ellers er et
fornuftigt formål med det.
Avatar billede tipsen Nybegynder
02. maj 2003 - 21:11 #13
Kan der ikke være et problem med den HTTP-header klienten sender, når både GET og POST blandes sammen!?
Avatar billede erikjacobsen Ekspert
02. maj 2003 - 21:21 #14
nej
Avatar billede tipsen Nybegynder
02. maj 2003 - 22:49 #15
Tak for hjælpen til jer alle - dem der vil have lidt point ligger bare et svar!
Avatar billede tipsen Nybegynder
02. maj 2003 - 23:04 #16
Erik: Det er jo ofte sådan, at når man har "dumme problemer" i forbindelse med programmering er det jo typisk fordi man ikke har tænkt sig ordentligt om, hvilket også var tilfældet her! Jeg satte mig ned og tænkte lidt over tingene og har nu fået lavet en yderligere opsplitning/modularisering af koden, hvilket bevirker at problemet ikke længere eksisterer, mit script er blevet hurtigere og jeg har stadig den samme funktionalitet :-)
Avatar billede tipsen Nybegynder
05. maj 2003 - 16:44 #17
Jeg siger tak for input - dem der vil have lidt point smider et svar.
Avatar billede tipsen Nybegynder
12. juni 2003 - 00:55 #18
lukker.
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
Vi tilbyder markedets bedste kurser inden for webudvikling

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