Sessions, Variablen und Links
Jojo55
- php
0 Dieter Raber0 Jojo55
Hallo ;)
Ich habe folgendes Problem:
Auf einer Frameseite, wird rechts eine nav.php eingebunden, und links eine include.php.
In der nav.php sieht ein Link z.B. so aus:
<a href="include.php?type=Hosen&subtype1=Schwere Hosen&subtype2=Leichte Hosen&subtype3=Sonstige&order_normal=true" target="main">Hosen</a>
Ich denke jeder sieht hier, dass da Variablen mit übergeben werden sollen ;)
Diese sind:
type --> Hosen
subtype1 --> Schwere Hosen
subtype2 --> Leichte Hosen
subtype3 --> Sonstige
order_normal --> true
und das ganze soll im "main"-Frame angezeigt werden (also die include.php wird geladen)
Nun steht in der include.php folgendes :
<?php
session_start();
if ($order_normal = "true")
{
session_register(type);
for ($g = 1;$g < 8;$g++)
{
${"order".$g} = "levelreq1 ASC";
session_register(order.$g);
session_register(subtype.$g);
}
}
else
{
for ($g = 1;$g < 8;$g++)
{
session_register(order.$g);
}
}
?>
ABER wenn nun einer auf den navlink klickt, dann schreibt er ja z.B.: type=Hosen in die Session.
Aber bei einem Klick auf einen anderen Link, der z.B.: type=Helme beinhaltet, nimmt er trotzdem noch type=Hosen her !
Und nun habe ich das Gefühl, dass das Ganze in einem Konflikt zwischen Session und den Linkvaris endet.
Denn der Link übergibt zwar type=Helme, aber in der Session steht ja immer noch type=Hosen, und nimmt wahrscheinlich die Hosen her um sie dann wieder in die Session zu schreiben ?-|
Und nun bin ich leider mit meinem Latein am Ende :(
Hallo Jojo55,
<a href="include.php?type=Hosen&subtype1=Schwere Hosen&subtype2=Leichte Hosen&subtype3=Sonstige&order_normal=true"
Der Link muss mit urlencode() behandelt werden
session_register(type);
Schau mal im PHP-Manual, was da unter session_register() steht, du solltest lieber das Array $_SESSION verwenden
Aber bei einem Klick auf einen anderen Link, der z.B.: type=Helme beinhaltet, nimmt er trotzdem noch type=Hosen her !
Wie gesagt urlencode()
Gruß,
Dieter
Danke Dieter...
Aber ich glaube ich habe das Problem schon behoben (nach viel Kopfzerbrechen ;) )
Ich übergebe nun nicht mehr type sondern type_ses und überschreibe einfach type (von der Session) mit type_ses
Das ist wohl die leichteste Lösung oder ?
Hallo Jojo55,
das mit dem session_register wird dadurch wohlgemerkt auch nicht besser.
Gruß,
Dieter