PDA

Bekijk Volledige Versie : Aboluste paden



Eduard Bekker
13/02/03, 12:55
Beste mensen!

De provider waar ik host heeft een optie ingesteld waardoor de variabele
$DOCUMENT_ROOT niet meer wordt weergegeven. Dat schijnt vanwege de
beveiliging te zijn.

Voor phpincludes gebruikte ik tot dusver altijd
$pad=$DOCUMENT_ROOT."/phpbestanden/";

Dat gaat dus nu niet meer. Toch wil ik geen relative pad gebruiken (bijv.
$pad="../../phpbestanden/";) gebruiken, omdat veel lastiger werken is.

Wat kan ik nu het beste doen?


--
----------------------
Groetjes,
Eduard
http://www.websitez.nl
----------------------

Matthijs de Z
13/02/03, 13:05
> Beste mensen!
>
> De provider waar ik host heeft een optie ingesteld waardoor de variabele
> $DOCUMENT_ROOT niet meer wordt weergegeven. Dat schijnt vanwege de
> beveiliging te zijn.
>
> Voor phpincludes gebruikte ik tot dusver altijd
> $pad=$DOCUMENT_ROOT."/phpbestanden/";
>
> Dat gaat dus nu niet meer. Toch wil ik geen relative pad gebruiken (bijv.
> $pad="../../phpbestanden/";) gebruiken, omdat veel lastiger werken is.
>
> Wat kan ik nu het beste doen?

Ik zit zomaar even hardop te denken.... Misschien in al je PHP bestanden een
php file includen waar de waarde van $DOCUMENT_ROOT in vast ligt.

Bijvoorbeeld:
File locatie.php

<?php
$DOCUMENT_ROOT = "/home/user/hetpad/"
?>

In je andere PHP files bovenaan:

include("/home/user/hetpad/locatie.php);

Ik weet niet of je $DOCUMENT_ROOT als variabele mag gebruiken, maar als het
mag, werkt het denk ik wel. Maar er zullen vast en zeker veel mooiere
oplossingen zijn dan dit ;-)
Mazzel,

Matthijs
>
>
> --
> ----------------------
> Groetjes,
> Eduard
> http://www.websitez.nl
> ----------------------
>

Rene Pijlman
13/02/03, 13:45
Eduard Bekker:
>De provider waar ik host heeft een optie ingesteld waardoor de variabele
>$DOCUMENT_ROOT niet meer wordt weergegeven. Dat schijnt vanwege de
>beveiliging te zijn.

Dat zal de fameuze register_globals wel weer zijn. Zie
http://www.php.net/manual/en/security.registerglobals.php (1) en
http://www.zend.com/manual/configuration.directives.php (2).

>Wat kan ik nu het beste doen?

Even je code aanpassen zoals op bovenstaande link (2)
beschreven.

--
René Pijlman

Wat wil jij leren? http://www.leren.nl

Eduard Bekker
13/02/03, 15:45
Op 13-02-2003 13:36, vertrouwde "Rene Pijlman" mij het volgende toe:

> Eduard Bekker:
>> De provider waar ik host heeft een optie ingesteld waardoor de variabele
>> $DOCUMENT_ROOT niet meer wordt weergegeven. Dat schijnt vanwege de
>> beveiliging te zijn.
>
> Dat zal de fameuze register_globals wel weer zijn. Zie
> http://www.php.net/manual/en/security.registerglobals.php (1) en
> http://www.zend.com/manual/configuration.directives.php (2).
Hier begrijp ik geen moeâh van, maar het komt er op neer, dat

$DOCUMENT_ROOT
in versie 4.3.0

Moet worden: $_SERVER['DOCUMENT_ROOT']
En dat dus insgelijks met alle 'vaste' variabelen met hoofletters, waar dus
zo'n prachtig woord voor bestaat.

Boven dien kun je niet meer via GET en POST de variabelen direct meenenmen
naar een andere php-pagina:
Die moet je eerst opvangen met
$doorgestuurd=$_GET['doorgestuurd'];

Een heel gedoe, als je provider zonder aankondiging de boel even omgooit.

Irritant ook is overigens dat de oudere versie met een notatie als
$a="40,96"
gewoon kon gaan rekenen.
Nu niet meer: krijg je
4*$a=40

Moet je dit dus eerst omzetten in 40.96.

Er leuk als je net je eerste webwinkel hebt geplaatst en ineens de prijzen
achter de komma worden afgekapt.....

--
----------------------
Groetjes,
Eduard
http://www.websitez.nl
----------------------

Ronald Paul
13/02/03, 15:55
Eduard Bekker <e.bekker@layout.nl> schreef:

>Irritant ook is overigens dat de oudere versie met een notatie als
>$a="40,96"
>gewoon kon gaan rekenen.
>Nu niet meer: krijg je
>4*$a=40
>
>Moet je dit dus eerst omzetten in 40.96.

Helemaal niet nodig. Heb je al eens gekeken naar
<http://php.net/setlocale>?

--
Groet, Ronald

Eduard Bekker
13/02/03, 17:05
Op 13-02-2003 15:51, vertrouwde "Ronald Paul" mij het volgende toe:

> Eduard Bekker <e.bekker@layout.nl> schreef:
>
>> Irritant ook is overigens dat de oudere versie met een notatie als
>> $a="40,96"
>> gewoon kon gaan rekenen.
>> Nu niet meer: krijg je
>> 4*$a=40
>>
>> Moet je dit dus eerst omzetten in 40.96.
>
> Helemaal niet nodig. Heb je al eens gekeken naar
> <http://php.net/setlocale>?
Ingewikkeld op het eerste gezicht.

Maar misschien heb ik er wat aan.


--
----------------------
Groetjes,
Eduard
http://www.websitez.nl
----------------------

Rene Pijlman
13/02/03, 18:15
Eduard Bekker:
[knip PHP-configuratieproblemen]
>Een heel gedoe, als je provider zonder aankondiging de boel even
>omgooit.
[...]
>Er leuk als je net je eerste webwinkel hebt geplaatst en ineens
>de prijzen achter de komma worden afgekapt.....

Mijn stelregel is dat het niet goed mogelijk is niet-triviale
webapplicaties bij virtual hosting of andere vormen van
"pakkethosting" onder te brengen. Je hebt allemaal van dit soort
narigheden met de installatie, configuratie en upgrades van
Apache, MySQL, PHP, Perl, sendmail en/of andere software waar de
applicatie van afhankelijk is. Soms is het al een wonder dat je
de applicatie aan de praat kunt krijgen, laat staan houden.

Je moet jezelf ook afvragen of je misschien gebouwd hebt op
undocumented features van het hostingplatform, in plaats van
contractueel gegarandeerde en gedocumenteerde features.

--
René Pijlman

Wat wil jij leren? http://www.leren.nl