Avatar billede jes9 Nybegynder
20. juli 2004 - 15:59 Der er 9 kommentarer og
1 løsning

PHP Version 4.2.2 og PHP Version 4.3.7

Hvorfor virker dette script ikke på web-hotel med PHP Version 4.3.7 når det virker på web-hotel med PHP Version 4.2.2 ???

SCRIPT:
<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>New Page 1</title>
</head>

<body>

<form method="POST" action="<? echo $PHP_SELF; ?>">

<input type="text" name="T1" value="<? echo $T1 ?>" size="20">
<input type="submit" value="Submit" name="B1"></p>
</form>

</body>

</html>
Avatar billede leif Seniormester
20. juli 2004 - 16:05 #1
Kan være at register_globals er sat anderledes !

Der hvor det ikke virker prøv med <? echo $_POST["T1"]; ?> i stedet for <? echo $T1 ?>
Avatar billede stingbat Nybegynder
20. juli 2004 - 16:07 #2
Kan være at register_globals ikke er slået til i den ene version.

Prøv at udskifte $PHP_SELF med $_SERVER['PHP_SELF'] eller $HTTP_SERVER_VARS['PHP_SELF']

$T - hvad er denne? Kommer den fra formen eller? Du bør bruge $_POST['T1'] eller $HTTP_POST_VARS['T1'] i stedet. Giver samtidig også større "sikkerhed" for dig selv, så ingen får "ændret" i dine variabler i selve scriptet.

Kig evt. lidt herinde:
http://www.php.net/manual/en/reserved.variables.php
http://www.php.net/manual/en/language.variables.predefined.php
Avatar billede Slettet bruger
20. juli 2004 - 16:08 #3
Det behøver heller ikke være php versionen.

Den letteste måde at gøre det på er at lave en phpinfo() funktion på begge hoteller, og se om ting som f.eks. SAFEMODE er sat på, det er ofte den der kan være til besvær.
--
pacroon
Avatar billede jes9 Nybegynder
20. juli 2004 - 16:12 #4
Det virker !!!

register_globals er sat Local Value og Master Value: off (hvor det ikke virker).

Kan man rette dette på sig web-hotel ?
Avatar billede erikjacobsen Ekspert
20. juli 2004 - 16:15 #5
Det kan ikke svare sig at ændre det. Brug hellere $_POST og $_GET osv., som man skal.
Avatar billede stingbat Nybegynder
20. juli 2004 - 16:15 #6
Hvis under Apache, opret en .htaccess - deri kan du lave en linie med:
php_flag register_globals on

Se evt. http://www.php.net/manual/en/ini.sect.data-handling.php#ini.register-globals
Avatar billede jes9 Nybegynder
20. juli 2004 - 16:15 #7
I er meget hurtige! mit svar var til Leif
Avatar billede leif Seniormester
20. juli 2004 - 16:20 #8
Jeg smider et svar.

Men giver de andre ret i brug nu den rigtigte metode.
Avatar billede jes9 Nybegynder
20. juli 2004 - 16:23 #9
Tak til alle !!!!!
Avatar billede stingbat Nybegynder
20. juli 2004 - 16:24 #10
Man skal dog huske at have i baghovedet, ved brug af superglobals ($_POST etc), at disse først virker fra 4.1.0 og nyere. Tidl. har det været HTTP_POST_VARS etc, som fortsat virker.
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