Avatar billede esser Nybegynder
01. november 2003 - 12:49 Der er 19 kommentarer og
1 løsning

Forms virker ikke mere efter PHP opgradering

Jeg har lige opgraderet fra PHP4.0.5 til PHP4.3.3 og nu virker mine forms ikke længere.

Eks.
<form action="action.php" method="POST">
Your name: <input type="text" name="name" />
Your age: <input type="text" name="age" />
<input type="submit">
</form>

og en php fil ved navn: action.php

Hi <?php echo $_POST["name"]; ?>.
You are <?php echo $_POST["age"]; ?> years old.

Når jeg forsøger at køre dette script får jeg følgende fejl:

Hi
Warning: Undefined variable: _POST in e:\programmer\apache\apache\htdocs\action.php on line 2
. You are
Warning: Undefined variable: _POST in e:\programmer\apache\apache\htdocs\action.php on line 3
years old

På forhånd tak
Avatar billede ztyxx Nybegynder
01. november 2003 - 12:55 #1
vis lige de første 3 linier i dit script
Avatar billede ztyxx Nybegynder
01. november 2003 - 12:56 #2
huske duivørigt at køre det i en if-sætning?
Avatar billede esser Nybegynder
01. november 2003 - 13:01 #3
hej, ovenstående eksempel er kopieret direkte fra php.net, så der er ikke mere kode.

Jeg har andre (selvskrevne eksempler), hvor jeg brugte de gamle navne eks. $HTTP_POST_VARS istedet for $_POST. Efter at have omdøbt disse variable til de nye navne (efter opgraderingen af PHP) virker disse scripts heller ikke mere...

jeg håber det hjælper?
Avatar billede ztyxx Nybegynder
01. november 2003 - 13:12 #4
prøv lige denn:

<?php

if($_POST["name"] && $_POST["age"]) {
    echo "Hi " .$_POST["name"] . ".<br>You are " . $_POST["age"] . " years old.";
}

?>
<form action="<? echo $_SERVER["PHP_SELF"];?>" method="POST">
Your name: <input type="text" name="name" />
Your age: <input type="text" name="age" />
<input type="submit" value="send">
</form><br>
Avatar billede tipsen Nybegynder
01. november 2003 - 13:28 #5
Meget spøjst problem...

Se evt:

http://www.tek-tips.com/gviewthread.cfm/lev2/4/lev3/31/pid/434/qid/665397

Tyder på en fejl i din installation vil jeg tro.
Avatar billede esser Nybegynder
01. november 2003 - 14:18 #6
Hej ztyxx, jeg får følgende fejl af din kode:

// Hi
Warning: Undefined variable: _POST in e:\programmer\apache\apache\htdocs\action.php on line 2
. // You are
Warning: Undefined variable: _POST in e:\programmer\apache\apache\htdocs\action.php on line 3
years old
Warning: Undefined variable: _POST in e:\programmer\apache\apache\htdocs\action.php on line 7

Your name:  Your age: 

?>
Avatar billede ztyxx Nybegynder
01. november 2003 - 14:21 #7
http://ztyxx.users.whitehat.dk/esser.php ligger den med præcis den kode, og har testet på min egen maskine også...
Avatar billede tipsen Nybegynder
01. november 2003 - 14:24 #8
Der er intet galt med php-koden - der er måske en bug i php v. 4.3.3 (tvivler dog, da jeg ikke kan finde en bug-report!) eller måske snarere i din installation!
Avatar billede esser Nybegynder
01. november 2003 - 14:31 #9
tipsen: Det link du gav ovenstående ser umiddelbart ud til at passe perfekt med mit problem. De gamle navne: $HTTP_POST_VARS virker nemlig stadig, så det kunne tyde på at Apache evt bruger den gamle version af PHP? Ved i hvor jeg kan tjekke det?
Avatar billede esser Nybegynder
01. november 2003 - 14:32 #10
ztyxx: Din kode virker perfekt hvis jeg bare bruger de gamle navne, så det må næsten være en opsætningsfejl..
Avatar billede ztyxx Nybegynder
01. november 2003 - 14:34 #11
kig i din php.ini og se om det er fordi at register_globals stå til on, det burde bare ikke være derfor
Avatar billede esser Nybegynder
01. november 2003 - 14:41 #12
Jeg har sat register_globals til on efter opgraderingen af php, men det gjorde jeg først efter at jeg opdagede at $_POST ikke virker. så off fungerer heller ikke...
Avatar billede ztyxx Nybegynder
01. november 2003 - 15:19 #13
hmm, så er jeg ikke til yderligere hjælp, da jeg så ikke lige har en ide til hvad der kan være galt...
Avatar billede sukos Juniormester
01. november 2003 - 15:29 #14
Er det den rigtige version af PHP som du henviser til i din httpd.conf?
Avatar billede esser Nybegynder
01. november 2003 - 15:47 #15
Jeg har nu været ude i en reinstallation af apache og PHP. Apache kører fint nu og PHP siger version 4.3.3 når jeg laver et script med phpinfo(). Så nu er fejlen væk men ztyxx' eksempel ovenfor skriver ikke navn og alder efter tryk på submit?
Avatar billede ztyxx Nybegynder
01. november 2003 - 15:48 #16
har du tjekket din php.ini
Avatar billede esser Nybegynder
01. november 2003 - 15:57 #17
tipsen: Dit link hjalp mig godt på vej til at kigge nærmere på om apache kiggede på den rigtige php installation. Vil du have point så giv et svar - ellers går de (også) til ztyxx

Tusind tak for hjælpen, det var en fornøjelse!
Avatar billede ztyxx Nybegynder
01. november 2003 - 16:29 #18
en fornøjelse at kunne bidrage :-)
Avatar billede tipsen Nybegynder
01. november 2003 - 19:14 #19
*svar* :-)
Avatar billede tipsen Nybegynder
01. november 2003 - 19:15 #20
¨
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