Psisco.com - nefunguje require
8 příspěvků
Archiv diskusního fóra
Fórum je uzavřené a slouží pouze ke čtení. Některé informace mohou být zastaralé.
-
AHoj. Mám problem. Zaregistroval sem si freehosting a doménu na www.psisco.com. U freehostingu píšou, že nejde zapnout Register globals a vypnout Safe mode. Já mám načítání stránek pomocí proměných např: ?show=home. Příkaz ke vkládání mám: <? if($show==""){$show="welcome";}?><? require $show.".php"; ?>. No tohle tam nefunguje. Na podporu jsem psal a napsali mi to že nejde zapnout Register globals a vypnout Safe mode. Já mám dotaz jestli tohle načítání nejde udělat nějak jinak aby to fungovalo. Prosím pomocte Dik. Dan
-
tohle si napis uplne nad tu podminku a melo by to jet ... $show = $_GET['show']; Pokud ne.. SOJKOVEC bo NIPAL bo jiny PHP schopny ti poradi ;)
-
sprav si register globals sam: register_globals () { foreach ($_GET as $key=>$value) { $key = $value; } foreach ($_POST as $key=>$value) { $key = $value; } foreach ($_COOKIE as $key=>$value) { $key = $value; } } uz stali len zavolat funkciu register_globals na zaciatku kazdeho skriptu a je to
-
lacop: to vsetko sa da zapisat aj takto: extract($_GET); extract($_POST); extract($_COOKIE);
-
lacop: IMHO by ti to nemohlo fungovat. musel bys místo $key = $value dávat $$key = $value, což je trochu rozdíl ;) dan: k čemu je psisco dobrý, když neumožňuje zapnout register globals? já myslím, že register globals by neměly mít nějaký bezpečnostní problém, že by nešly zapnout. pinkynew: jj. i když ještě lépe by šlo popadnout textový editor a dát najdi->nahraď a všechny tyhle proměnné normálně nahradit za $_POST nebo $_GET. ušetří se pak práce PHP parseru.
-
dan: mimochodem, takovýmto způsobem zobrazovat různé stránky není bezpečné. řekněme, že inkriminovaný soubor se jmenuje index.php. pak někdo zadá tvojeadresa.neco/index.php?show=index. nechtěj vědět, co se stane ;) zacyklí se ti server :D (mno, on to ten server po 30 sekundách vzdá, ale výsledek bude otřesný - prázdná stránka s nějakým varováním, že běh skriptu překročil 30 s)
-
if (isset($_REQUEST)) extract($_REQUEST);
-
Jinak totální nebezpečnost vkládání přímo názvů stránek byla zmíněna výše.