php: session & request
phore
hallo.
ich hab ein problem und zwar übergebe ich den wert von ein paar checkboxen. das problem ist aber dass die daten über mehrere dateien hinweg müssen. also hab ich die resultate in die session übergeben:
| code: |
1:
2:
3:
4:
5:
6:
|
$_SESSION['wahl1'] = $_REQUEST['wahl1'];
$_SESSION['wahl2'] = $_REQUEST['wahl2'];
$_SESSION['wahl3'] = $_REQUEST['wahl3'];
$_SESSION['wahl4'] = $_REQUEST['wahl4'];
$_SESSION['wahl5'] = $_REQUEST['wahl5'];
$_SESSION['wahl6'] = $_REQUEST['wahl6']; |
|
und will sie dann auf einer anderen seite wieder ausgeben:
| code: |
1:
2:
|
$eintrag = $SESSION['wahl1'] . '|' . $SESSION['wahl2'];
echo $eintrag; |
|
das funzt aber nicht..es kommen nur die trennzeichen..die werte bleiben weg.
die session starte ich übrigens so: @session_start();
danke für die hilfe. phore
GreenRover
Tja das Problem an $$_SESSION ist, das es nicht einfach so geht.
Also entweder du übergibst die SSID die du mittels:
session_id();
in erfahrung bringst und erstellst. in der URL weiter wobei denn einfach immer als Bezeichner die Ausgabe von
session_name() (der Standart name währe: PHPSESSID)
diehnen sollte.
Oder du machst es dir einfach und führst session_start() auf jeder Seite aus, wo die Variabelle $_SESSION verwendet wird.
Wobei session_start() keienrlei Ausgabe vorweg haben darf, da diese Funktion die SSID im Packetheader als cookie mitliefert.
Ich es sit verständlich??
Sonst halt mal:
http://de.php.net/manual/de/ref.session.php durchlesen.
phore
mhm. ich habe aber auf jeder seite session_start(); wo ich die variablen brauche. und ich übergebe die werte per submit button:
| code: |
1:
2:
3:
|
<form action="speichern.php?' . SID . '" name="speichern">
<input type="submit" name="speichern" value="speichern">
</form> |
|
ist das falsch so?
GreenRover
also wenn du session_start verwendest, dann lass mal das mit der SID weg, nicht das es dadurch zu fehlern kommt, bzw wird es denn richtig mitgeliefert? also die SID
phore
jo auch wenn ich die SID weglasse übermittelt es nichts...
GreenRover
Hmm, und du hast sicher vor dem session_start() keinerlei echo, print oder feste HTML ausgabe???
und was sagt phpinfo() ?
phore
jo - session_start ist ganz oben.
schau mal selber
www.zeroweb.ch/php/check/
speicher mal was ab dann siehste was phpinfo sagt

- weiss ja nicht was du wissen willst..
GreenRover
also die daten für die Session sehen gut aus, poste mal den Quelltext der normal.php und der speichern.php aber bitte in PHP Tags.
phore
normal.php
| php: |
1:
2:
3:
4:
5:
6:
|
<?php $_SESSION['wahl1'] = $_REQUEST['wahl1'];
$_SESSION['wahl2'] = $_REQUEST['wahl2'];
$_SESSION['wahl3'] = $_REQUEST['wahl3'];
$_SESSION['wahl4'] = $_REQUEST['wahl4'];
$_SESSION['wahl5'] = $_REQUEST['wahl5'];
$_SESSION['wahl6'] = $_REQUEST['wahl6']; ?> |
|
| php: |
1:
2:
3:
|
<?php <form action="speichern.php" name="speichern">
<input type="submit" name="speichern" value="speichern">
</form> ?> |
|
speichern.php
| php: |
1:
2:
|
<?php $eintrag = $SESSION['wahl1'] . '|' . $SESSION['wahl2'];
echo $eintrag; ?> |
|
jo das ist der wichtigste teil. die session_start()'s hab ich mal weggelassen aber die stimmne.
danke
.phore
GreenRover
Tja
$SESSION heist das nicht sondern $_SESSION (-;
hast in der speichenr.php den _ vergessen.
phore
musste ja was bescheuert einfaches sein
danke dir wiedermal!
.phore
GreenRover
ja ja, die kleinigkeiten übersieht man am meisten udn sucht am längsten nach