Übergabe einer Variable und Variable=global?

Master Flexi

Mitglied
Hallo!

Ich habe mir ein Loginsystem gebaut mit Sessions und einer Datenbank.
Soweit so gut.

Meine Navigation läuft nach dem Login über include Befehle mit switch-case.
Code:
#navigation
<?php
switch($site) 
{
case "home": include("home.php"); break;
}
?>

Das funktioniert auch gut.

Nun habe ich unten noch ein Drop-Down-Menü:
Code:
<select class="townlist" onChange="location.href=this.value" style="width:187px" name="stadtauswahl"><option value="<?php echo "index2.php?user=$_REQUEST[user]&sid=$_REQUEST[sid]&stadt=barcelona"; ?>">Barcelona</option></select>

Die Variable $stadt erhält am Anfang meiner index2.php einen Standardwert und soll dann nach Auswahl entsprechend verändert werden.
Diese Variable $stadt soll global für alle includes also egal auf welchen Link geklickt wird benutzt werden können.
Wie löse ich mein Problem am Besten?
Ist es sinnvoll bei jedem include noch &stadt=$stadt ranzuhängen und dann in den includes die Variable mit GET auslesen? Oder gibt es eine bessere Methode?

Vielen Dank im Voraus und Liebe Grüße,
MF
 
Ich bin leider, was die Sessions betrifft, nicht so versiert.

Könntest du vielleicht da noch ins Detail gehen, wie ich das mit dem Link dann hinbekomme und die Variable auslesen kann?

Vielen Dank!
 
Öhmm... ich kann nicht ganz folgen. Oder es ist zu einfach ^^

Wenn die Varible $stadt am anfang von index2.php gesetzt wird, und du danach bla.php includest, worin die Varible $stadt abgerufen wird, gibt es kein Problem!

Oder du nimmst sie einfach mit in die Sessions, wies sexmagic schon gesagt hat!
 
Nachtrag:

PHP:
#index2.php
session_start();
$_SESSION['stadt'] = "Berlin";

PHP:
#bla.php
session_start();
echo $_SESSION['stadt']; // Berlin
 
Nach dem include von dem switch, case ist die Variable nicht mehr vorhanden.

Wieso auch immer....

Vielleicht kannst du mir noch sagen, wie ich sie in die Sessions reinbekomme? :-)

Vielen Dank!
 
Also ich habe bei Gott keine Ahnung was du willst dun was du vorhast, aus deiner erklärung bin ich nicht schlau geworden.

Wenn du jedenfalls beim aufrufen der Seite einen Wert in $stadt schreibst und dieser dann einfach auf jeder Seite die nachher aufgrufen wird verfügbar sein soll, dann machst du einfach auf der Startseite die er als erstes aufruft:

PHP:
session_start();

$_SESSION['stadt'] = 'Dein Wert';

Somit kannst du auf jeder Seite auf der die Session noch aktiv ist den gesetzten wert aus dieser Variable rausholen.
 
Also ich habe bei Gott keine Ahnung was du willst dun was du vorhast, aus deiner erklärung bin ich nicht schlau geworden.

Wenn du jedenfalls beim aufrufen der Seite einen Wert in $stadt schreibst und dieser dann einfach auf jeder Seite die nachher aufgrufen wird verfügbar sein soll, dann machst du einfach auf der Startseite die er als erstes aufruft:

PHP:
session_start();

$_SESSION['stadt'] = 'Dein Wert';

Somit kannst du auf jeder Seite auf der die Session noch aktiv ist den gesetzten wert aus dieser Variable rausholen.

Okay das habe ich verstanden. MIr ging es jetzt darum, wie ich mit dem Link Aufruf den Wert der Session-Variable ändern kann..

Vielen Dank
 
Sessions: Schon geschehen... geht alles viel zu schnell, sorry mein Fehler ^^

Aber die Varible darf nicht verschwunden sein!

PHP:
# index.php
$stadt = "Berlin";
switch( $x ) {
  case "home": include("home.php"); break;
  case "news": include("news.php"); break;
}

PHP:
# home.php
echo $stadt; // Berlin

Sollte funktionieren

Edit: Na, ist ja alles geklärt :)
 
Geht alles so fix irgendwie ;):)
Das funktioniert soweit alles.

Wie kann ich nun die $stadt Variable per Linkaufruf in der Session ändern?


Liebe Grüße,
MF
 
Zurück