Ausgabe vom GET abhängig

cille

Erfahrenes Mitglied
Hi ho,
habe eine Seite Programmiert die komplett über die
"index.php" läuft, d.h. wenn man auf ein Link klickt kommt zb "index.php?produkte".
Mein Problem besteht jetzt darin,
wenn man auf die seite geht kommt ja nur index.php und da soll ja zB. ein Willkommenstext stehen, aber sobald ich auf eine andere seite gehe zB. "index.php?produkte",
dann steht da ja auch der Willkommenstext,
wie aber kann ich wenn nur "index.php" ist den Text anzeigen.

Hoffe die Problembeschreibung ist angemessen und Ihr kennt vielleicht eine lösung.
Danke schonmal für eure antworten.

mfg,
cille
 
PHP:
switch($_GET['site'])
{
   case "produkte":
           include('produkte.php.inc'); 
   break;
   case "...":
           include('...');
   break;
   default:
           include('willkommen.php.inc');
}
index.php?site=produkte -> Produktseite wird included.
index.php -> defaul fall -> Willkommenseite wird included.

That`s it!
 
So wie suye hätte ich es auch gemacht, kannst es aber auch mit einer if-Abfrage machen:

if(!isset($_GET['site'])) { include welcome.php } elseif($_GET['site'] == "produkte") { include product.php } ...
 
danke für eure antworten,
habe da was falsch erklärt sry :D
der ansatzt von euch ist aber schon korrekt.

Ich habe eine Seite mit login u.v.m. das leuft alles über index.php
es kommt auch sehr oft for das ich mit dem parameter "index.php?produkte=" << = >>
arbeite, gibt es da keine einfachere form, da ich sonst die komplette page ändern müsste.
Aber ich habe knapp 100 seiten die ich ändern müste.
 
Mhh,
wie meinste das?

Ich arbeite schon mit SESSIONs da ick ein Login Script darüber laufen lasse.
 
Erstmal muss ich dir sagen, dass du die Gabe "gut erklären können" nicht besitzt :)

Ich erkläre jetzt mal dein Problem so wie ich es nach langem nachdenken verstehe:

Du bindest auf der index.php über eine switch-case-Fallunterscheidung ($_GET['site'] betreffend) die Content Seiten ein.

index.php -> Willkommen
index.php?site=login -> login Seite

Wenn du jetzt jedoch die URL...

index.php?produkte=...

verlinkst, dann erscheint Willkommen, weil ja $_GET['site'] nicht gesetzt ist + den Teil der durch $_GET['produkte'] eingebunden wird. Das möchtest du vermeiden!

Wenn das wirklich dein Problem seien sollte, dann hast du die Seite schlecht durchdacht!

Wie wäre es mit: index.php?site=produkt&produkte=...

Wenn das zu umständlich ist, oder aus irgendwelchen Gründen nicht geht (weiß ja keiner was du vor hast, wenn du uns nur eine minimale, unverständliche Beschreibung deines Problems gibst), dann probier es mal so:

PHP:
switch($_GET['site'])
{
   case "produkte":
           include('produkte.php.inc'); 
   break;
   case "...":
           include('...');
   break;
   default:
   {
        if(!isset($_GET['prudukte']))
   }         include('willkommen.php.inc');
}
Nicht schön, aber selten ..
 
Zuletzt bearbeitet:
Zurück