....
include-Dateien... DRINGEND
Einklappen
X
-
<<Jetzt will ich bei meinem eine Seite in der Technik programmieren und es läuft nicht. Es werden keine Unterseiten angezeigt.>>
das ist sehr traurig.
wenn keine seiten angezeigt werden, dann muss da wohl eine fehlermeldung vorkommen?
ausserdem ist if(file_exists("inc/$d.inc.php")==1) nicht falsch, aber auch nicht besonders richtig
if(file_exists("inc/$d.inc.php")) ist eigentlich ausreichend.
mach mal
extract($_REQUEST); auf der erster zeile von deinem script, und wenn es functioniert, dann schau dir informationen zu register_globals bei php.netSlava
bituniverse.com
-
Vorher stellt sich wohl die Frage, wo $d überhaupt herkommt (nebenbei bemerkt finde ich es auch immer sehr unschln, Variablen innerhalb der String-Delimiter zu schreiben. Welcher Editor highlightet dass denn richtig?).
Edit: Ach da kommt $d her, hab ich wohl eben überlesen. Naja, dann wurde ja alles gesagt.
Kommentar
-
Generell solltest du $_GET benutzen anstelle von $d ....Für alle die Fehler suchen, gibts gratis tolle Debuggingmöglichkeiten:
var_dump(), print_r(), debug_backtrace und echo.
Außerdem gibt es für unsere Neueinsteiger ein hervorragendes PHP Tutorial zu PHP 4 und PHP 5 (OOP)
Es heißt $array['index'] und nicht $array[index]! Und nein, das ist nicht egal!
Dieses Thema lesen, um Ärger im Forum und verzögerte Hilfen zu vermeiden.
Kommentar
-
Original geschrieben von Shurakai
Generell solltest du $_GET benutzen anstelle von $d ....Für alle die Fehler suchen, gibts gratis tolle Debuggingmöglichkeiten:
var_dump(), print_r(), debug_backtrace und echo.
Außerdem gibt es für unsere Neueinsteiger ein hervorragendes PHP Tutorial zu PHP 4 und PHP 5 (OOP)
Es heißt $array['index'] und nicht $array[index]! Und nein, das ist nicht egal!
Dieses Thema lesen, um Ärger im Forum und verzögerte Hilfen zu vermeiden.
Kommentar
-
Wenn ich Deinen Request-Befehl in der Zeile vor meiner if-Bedingung setze kommt folgende Fehlermeldung:
Parse error: syntax error, unexpected T_IF in /var/www/html/web1020/html/schroeder/index.php on line 14
ich denk deine lösung funktioniert nicht weil register globals aus ist was auch richtig ist ... - stattdessen solltest du $_GET [ 'd' ] benutzen
desweiteren sei bemerkt das solche includes auf veränderbare gets nicht sehr sicher sind ...
PHP-Code:switch ( $_GET [ 'd' ] ) {
case 'blubb':
include ( 'blubb.php' );
break;
default:
include ( 'home.php' );
}
Die Regeln | rtfm | register_globals | strings | SQL-Injections | [COLOR=silver][[/COLOR][COLOR=royalblue]–[/COLOR][COLOR=silver]][/COLOR]
Kommentar
-
Wo soll ich das benutzen? Alle $d damit ersetzenDie Regeln | rtfm | register_globals | strings | SQL-Injections | [COLOR=silver][[/COLOR][COLOR=royalblue]–[/COLOR][COLOR=silver]][/COLOR]
Kommentar
-
OffTopic:
Original geschrieben von unset
... Variablen innerhalb der String-Delimiter zu schreiben. Welcher Editor highlightet dass denn richtig?).
Kommentar
-
Da sieht man doch schon am highlighting, dass da was nicht stimmen kann -.-
PHP-Code:switch ( $_GET [ 'd' ] )
{
case 'inc/'.$_GET [ 'd' ].'.inc.php':
include ( 'inc/'.$_GET [ 'd' ].'.inc.php' );
break;
default:
include ( 'inc/home.inc.php' );
}
Kommentar
-
Original geschrieben von kerstink
Die Variable d also gefüllt ist, läuft die Switch-Anweisung ins default und ich seh immer noch nicht das richtige ....
da "d=berechnen" nicht in einem "case" vorkommt, geht er natürlich auf's default...Der Programmierer ist der Vormund des Anwenders.
Kommentar
-
Die Variable d also gefüllt ist, läuft die Switch-Anweisung ins default und ich seh immer noch nicht das richtige ....
switch wechselt zwischen den werten die in der oben angegebenen vairable stehen ...PHP-Code:case 'inc/$_GET [ 'd' ].inc.php':
du sollst lieber die einzelnen werte die für d möglich sind in die cases schreiben ...
PHP-Code:switch ( $_GET [ 'd' ] )
{
case 'forum':
include ( 'inc/forum.inc.php' );
break;
case 'wasanders':
include ( 'inc/wasanderes.inc.php' );
break;
default:
include ( 'inc/home.inc.php' );
}
Die Regeln | rtfm | register_globals | strings | SQL-Injections | [COLOR=silver][[/COLOR][COLOR=royalblue]–[/COLOR][COLOR=silver]][/COLOR]
Kommentar
Kommentar