PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : newsscropt


joker
26.07.2004, 05:58:17
hi, hab nen newsscript vorlanger zeit installiert... nun sind wir umgezogen und auf dem neuen server geht es nicht mehr, er kann die dateien nicht mehr finden, hie rein ausschnitt woran es liegt:


$extension = explode(".", $PHP_SELF);
$ext_count = count($extension);
$extension = "." . $extension[$ext_count-1];


hab es behoben in dem ich
$extension = ".php";

damit ersetzt hab... in den fehlermeldungen fehlen nehmlich die endungen.

aber warum geht das obige kleine script nicht mehr? woran könnte es ligen... was muss ich am serve rändern?

c4
26.07.2004, 09:11:43
Vermutlich das:
Mit Version 4.1 wurde in PHP ein neues Sicherheitskonzept eingeführt, welches seit Version 4.2 standardmäßig aktiviert ist. Seit dem muss man alle übergebenen Variablen mit
$_GET['variable'] - für Urlparameter
$_POST['variable'] - für mit method=post versendete Parameter
$_COOKIE['variable'] - für Cookies
$_REQUEST['variable'] - $_POST, $_GET und $_COOKIE zusammen
$_FILES['variable'] - für hochgeladene Dateien
$_SERVER['variable'] - für Servervariablen (z.B. $_SERVER['PHP_SELF'])
$_ENV['variable'] - für Umgebungsvariablen
ansprechen. Also ehemals $str mit $_GET['str']
Oder Du setzt in der php.ini register_globals auf on. Davon rate ich aber ab.

joker
26.07.2004, 17:51:58
ne dass kann nicht sein, es war 4.2.2 instaliert und auf dem neuem serve rist 4.3.3 instaliert

Dan
26.07.2004, 19:49:22
Es kann aber sein, das register_globals (das 'neue' Sicherheitskonzept) auf dem alten Server aktiviert war und auf dem neuen jetzt nicht (was ja auch empfohlen ist).

editus:
Ich hatte das selbe Problem, als ich von einem 4.2.0 Server auf meinen selbst eingereichteten *amp wechselte.

joker
27.07.2004, 09:21:28
so hab bissel getested, auf dem alten wars off und auf dem neuen on... habs kurz on geschalted und es ging...

noch eine kleine frage:


$extension = explode(".", $PHP_SELF);
$ext_count = count($extension);
$extension = "." . $extension[$ext_count-1];

das ist doch nur dafür wenn php dateien includet werden das man nicht die endung der datei aufschreibt sonern nur $extension, da $extension .php einfügt, wofür ist das sinvoll? is doch nur mehr arbeit für den server odeR?