Archiv verlassen und diese Seite im Standarddesign anzeigen : php4 include problem
Hallo
habe in meiner index das hier stehen damit die inclueds in das fenster kommen :
<?php
$_GET['site'];
if ($site != NULL) {
if (file_exists($site. ".php")) { include($site. ".php");} else { include("news.php");};
} else {include("news.php");};
?>
und als include befehl nehme ich:
<?php
include("server/server.php");
?>
wenn ich register_globals an mache ist das auch alles kein problem jedoch ist mir das risiko mit register_globals zu hoch
Also meine frage an euch wie kann ich den include zum laufen bringen ohne register_globals zu aktivieren
Mfg
Mr.Bo
wird denn die Variable überhaupt per GET übergeben?
Das soll vermutlich so heissen:
$site = $_GET['site'];
oder? Ansonsten gilt auch für php: Fehlermeldungen werden nicht nur ausgegeben, weil das Fenster sonst so leer wirkt...
P.S.: Ich würde die Sache noch wesentlich restriktiver coden; wenn es einer schafft, dir eine beliebige php-seite in z.b. /tmp unterzuschieben, führt dein Code die völlig blind aus...
Ja ich bin nicht so gut in php aber könnt ihr mir ein paar tips geben oder nen code das es auch alles geht sitze schon ne weile an dem problem und komme nicht weiter
Mfg
Mr.Bo
öhm, für Schulungen sind wir hier nicht wirklich zuständig. Würde Dir ein gutes Buch empfehlen...
MiGo hat es doch schon geschrieben:
$site = $_GET['site'];
Ansonsten ersetze jedes $site durch $_GET['site']... :ugly:
ja dann kann ich eigentlich genausogut registrer globals anmachen ist alles unsicher bei php oder wie
Nein, ist es nicht - ich würde echt empfehlen, Dir ein gutes Buch zu besorgen - welches diese Grundlagen erklärt.
Nur so viel: mit der Methode bis Du immerhin selbst dafür verantwortlich, welche Variablen Du von extern einliesst - bei register globals on macht der Webserver das für dich...
ja dann kann ich eigentlich genausogut registrer globals anmachen ist alles unsicher bei php oder wie
Nein, du solltest nur dringend Programmieren lernen. Und ein wenig beim code-Schreiben mitdenken.
Die Gefahr bei register_globals ist, dass Variablen von aussen gesetzt werden, von denen du es nicht erwartest.
Wenn du allerdings blind Benutzereingaben akzeptiert und ausführst, kannst du safe_mode, register_globals etc. so lange anmachen, wie du willst - das Loch in die Sicherheit machst du selber.
Die erste Regel beim Schreiben von Software auf Webservern:
"Jedes Byte, das von aussen kommt, ist ein Angriff". Oder kann zumindest einer Sein.
Wenn du dich daran nicht hälst, kannst du deinen Server recht fix neu aufsetzen ;)
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.