Selbe Datei includen
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
ausdruck
beitrag
blabla
datei
deswegen
fehler
fragen
funktion
gen
klappe
laufzeitfehler
mode
parameter
schwachsinn
sinnen
string
test
-
Habe da mal ne Frage wenn ich jetzt so habe:
$mode =$_GET['test']
{
if($mode == 1)
{
echo ' der include kALPPT';
}
}
und die Datei hei?t inde.php
ich will die selbe datei includen also so:
$mode =$_GET['test']
{
if($mode == 1)
{
echo ' der include kALPPT';
}
else($mode == 2)
{
include 'index.php?test=1';
}
}
W?rde es dann klappen??
Hab noch nicht ausprobiert
-
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Habe da mal ne Frage wenn ich jetzt so habe:
$mode =$_GET['test']
{
if($mode == 1)
{
echo ' der include kALPPT';
}
}
und die Datei hei?t inde.php
ich will die selbe datei includen also so:
$mode =$_GET['test']
{
if($mode == 1)
{
echo ' der include kALPPT';
}
else($mode == 2)
{
include 'index.php?test=1';
}
}
W?rde es dann klappen??
Hab noch nicht ausprobiert
Mal eine Frage warum probierst du es nicht aus.
Dann w?rdest du feststellen, dass es zu eine Laufzeitfehler kommt wenn test nicht 1 ist.
Denn include 'index.php?test=1'; geht nicht.
Als Fehler w?rde dann Erscheine, dass er die datei 'index.php?test=1' nicht finden kann.
Aber ?berleg doch mal selber, wof?r sollte das denn auch gut sein?
(P.S. das das ganze nicht else sondern elseif hei?en mus h?ttest du wohl auch bemerkt)
Du k?nntest folgendes machen.
elseif($mode == 2)
{
$_GET['test']=1;
include 'index.php';
}
Aber warum musst du denn die Datei nochmal includen?
In der Regel ist das Schwachsinn.
W?rde es denn nicht reichen, wenn du einfach das ganze an Anfang schreibst und dann $mode = 1 schreibst. -
Hi,
ich bin mir nicht 100%ig sicher, aber die Variabeln in $_GET enthallten immer Strings. Deswegen w?rde sich ein Ausdruck wie $_GET['test'] == 1 gar nie erf?llen, ausser $_GET['test'] wurde davor ver?ndert. Mann k?nnte es nat?rlich auch in einen Integer umwandeln: $mode = (int) $_GET['test'].
mfg,
hr -
Du kannst die Datei includen, das funktioniert. Allerdings wird das auf Dateiebene gemacht und daher kannst du nicht irgendwelche GET-Parameter anh?ngen (also das "?test=1" muss weg). Wenn du vor dem Includen der selben Datei irgendwelche GET- oder POST-Variablen ?ndern, l?schen oder hinzuf?gen willst, dann machst du das so:
unset($_GET['blabla']); // => L?schen
$_GET['haha'] = "blubb"; // neu angelegen oder ?ndern
jacr schrieb:
Aber warum musst du denn die Datei nochmal includen?
In der Regel ist das Schwachsinn.
Macht schon oft Sinn, da PHP keine GOTOs unterst?tzt. Ich benutze das zumindest ziemlich oft (hilfreich beim Eleminieren von fremdbestimmten Parametern, denen ung?ltige Werte ?bergeben wurden). -
jacr schrieb:
Aber warum musst du denn die Datei nochmal includen?
In der Regel ist das Schwachsinn.
Macht schon oft Sinn, da PHP keine GOTOs unterst?tzt. Ich benutze das zumindest ziemlich oft (hilfreich beim Eleminieren von fremdbestimmten Parametern, denen ung?ltige Werte ?bergeben wurden).
Ich habe es noch nie benutzt. ;)
Wenn ich eine GOTO brauchen w?rde, w?rde ich eine Funktion benutzen.
heavyraptor schrieb:
Hi,
ich bin mir nicht 100%ig sicher, aber die Variabeln in $_GET enthallten immer Strings. Deswegen w?rde sich ein Ausdruck wie $_GET['test'] == 1 gar nie erf?llen, ausser $_GET['test'] wurde davor ver?ndert.
Ich wei? es nicht genau aber ich vermute, dass dies von PHP erkannt wird. Also ich glaube es w?rde funktionieren. Und ich meine ich h?tte eine GET-Parameter schon als Intger verwendet.
Jens
Beitrag ge?ndert am 4.04.2006 00:28 von jacr -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage