includes Dynamisch machen ! Wie !?!?!
Kane
- php
Hi Leute ich habe ein Problem ich versuche meine includes dynamischer zu machen schaffe es aber nicht !
<a href="index.php?luli=includes/clansatzunginc" target="_self">Button</a>
(( Auszug aus meiner Index.php ))
<td width="463px" valign="top"><br>
<?include("includes/maininc.php");?> //soll immer zuerst angezeigt werden
<?include($luli."php");?> // soll nach klick auf den Button erscheinen und maininc.php komplett ersetzen
</td>
Klappt aber nicht !
Beim anschen der Index.php erhalte ich diesen Fehler :
Notice: Undefined variable: luli in C:\Homepages\OmniSecure\htdocs\lineagePortal\index.php on line 79
Warning: main(php): failed to open stream: No such file or directory in C:\Homepages\OmniSecure\htdocs\lineagePortal\index.php on line 79
Warning: main(): Failed opening 'php' for inclusion (include_path='.;c:\php4\pear') in C:\Homepages\OmniSecure\htdocs\lineagePortal\index.php on line 79
da drüber wird aber mein Normales include angezeigt ( <?include("includes/maininc.php");?> )
_____________________________________________________________________
wenn ich dann auf den link drück kommt dieser Fehler :
Warning: main(includes/clansatzungincphp): failed to open stream: No such file or directory in C:\Homepages\OmniSecure\htdocs\lineagePortal\index.php on line 79
Warning: main(): Failed opening 'includes/clansatzungincphp' for inclusion (include_path='.;c:\php4\pear') in C:\Homepages\OmniSecure\htdocs\lineagePortal\index.php on line 79
und der Text von meinem normalen Include steht noch da ( <?include("includes/maininc.php");?> )
Was habe ich falsch gemacht *heul* bitte helft mir
ps. Sorry wennes etwas unübersichtlich is
Hi
<? if(!$luli){
include("includes/maininc.php");
}else{
include("includes/$luli.php");
}
?>
Gruss Rainer
Klappt aber nicht !
Such mal im Archiv nach register_globals!
Und mach das niemals so:
<?include($luli."php");?>
Du bindest hier einfach was ein, ohne zu checken, was der User da übergibt. Indem ich bei sowas jetzt ein wenig rumspiele und verschiedene Werte an den URL anhänge, kann ich dort einbinden lassen, was ich will.
Möglicherweise kommte ich so an Passwort-Dateien oder anderes ran...
Außerdem sollte da wohl noch ein Punkt mehr hin: include($luli.".php");
Hi Kane,
<?include("includes/maininc.php");?> //soll immer zuerst angezeigt werden
Das ist richtig, gesetzt dem Fall, dass es auch nach dem Klick noch angezeigt werden soll.
<?include($luli."php");?> // soll nach klick auf den Button erscheinen und maininc.php komplett ersetzen
Hier kriegst du eine Notice angezeigt, wenn $luli leer ist (Undefined variable) und zusätulich noch eine Warnung, weil er dann versucht die Datei "php" zu includen, die es natürlich nicht gibt.
Nach dem Klick gibt es dann immer noch einen Fehler, weil du vor "php" den . vergessen hast.
Im Endeffekt muss es dann so aussehen:
<?include("includes/maininc.php");?>
if(!empty($_GET['luli'])) {
<?include($_GET['luli'] . ".php");?> //Der erste Punkt zum Verbinden, der zweite für .php
}
Außerdem solltest du die Variable über $_GET ansprechen.
MfG, Dennis.
Thx hat mir weiter geholfen :)