[php] 4.1.2 != 4.2.3?

Pagina: 1
Acties:

  • bgever
  • Registratie: April 2002
  • Laatst online: 28-05-2021
Ik heb hier een apache server draaien met php versie 4.2.3.

D8 ik, kan ik lekker gaan scripten op m'n eigen pc met de nieuwste php versie.
Maar nu heb ik 2 andere online hosts, en daar draaien ze php 4.1.2.

Minder dus... Want nu stuit ik op een probleem.

Ik gebruik dus voor php 4.2.3 de super globals $_GET[] en $_POST[]. Maar die scripts die dat gebruiken werken niet met php 4.1.2.

Is dat op te lossen, dat php 4.1.2 daar ook mee werkt? Of is dat écht alleen maar vanaf 4.2.2 beschikbaar? Ik code liever met de superglobals, omdat dat veiliger is. Vooral omdat ik het in loginscripts gebruik.

Ik wil niet in mijn scripts 2 versies gaan ondersteunen, dus ik maak géén php versie check...
Als het niet gaat werken, denk ik dat ik maar * zucht * versie 4.1.2 ga installen.

Hopelijk is er een oplossing...

  • bgever
  • Registratie: April 2002
  • Laatst online: 28-05-2021
Ah, heb al een oplossing gevonden.

Ik heb in php.ini de volgende regel veranderd:
register_globals = Off
in
register_globals = On

Hierdoor verandert hij auto de $_GET[] en $_POST[] variabelen.

Nu moet ik dus wel < php 4.2.x scripts schrijven. Hierdoor is het nog niet opgelost.

Weet iemand dus hoe ik met < 4.2.x wél $_GET[] en $_POST[] kan gebruiken???

Verwijderd

je zou bovenaan elk script zoiets kunnen doen:
PHP:
1
2
3
foreach ($HTTP_GET_VARS as $key => $value) {
$_GET[$key] = $value;
}

  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

Die superglobals zitten er al sinds php-4.1.0 in :?
Wat ik alleen niet zeker weet is of ze ook al sinds 4.1.0 super-global zijn.
Alles daarvoor had ze iig niet.

In de changelog van 4.1.0:
"Introduced $_GET, $_POST, $_COOKIE, $_SERVER and $_ENV variables, which deprecate the old $HTTP_*_VARS arrays. In addition to be much shorter to type - these variables are also available regardless of the scope, and there's no need to import them using the 'global' statement. (Andi & Zeev)"

Zou dus gewoon moeten werken, ik gok dat het om een andere reden fout gaat in je scripts.

  • bgever
  • Registratie: April 2002
  • Laatst online: 28-05-2021
Hmz, ik heb nu een gettest gedaan (klein scriptje met $_GET[] er in :P) en nu werkt ie wel :S

Beetje gek dus. Maar goed, $_GET[] and $_POST[] here I come! :7

(snap nu nog steeds niet waarom het eerst niet werkte...)