problemen met session
dit is wat ik momenteel heb:
1ste pagina
session_start();[linebreak]if(isset($_POST[submit])){[linebreak] $_SESSION["gesl"] = $_POST[gesl][linebreak]header("Location:pagina2.php");}
het formulier:
<form action="" method="post">
<select name="gesl" class="opt1">
<option class="selc1">maak keuze</option>
<option class="selc1">heren</option>
<option class="selc1">dames</option>
<input type="submit" name="submit" value="verfijn" class="knop"/></form>
en op pagina2:
session_start();[linebreak]$_SESSION[gesl] = $gesl;
maar ik kom op de pagina terecht maar ontvang mij variable niet.
Kan mij iemand helpen, heb al vanalles geprobeert
Ik snap iets niet, ik zie bij jou staan, dat je $_SESSION een waarde aan wordt toegevoegd genaamd: $_POST['gesl'];
En dan op pagina 2, verander je de waarde in $_SESSION = $gesl, maar de 2e pagina heeft geen idee wat $gesl is heb ik zomaar een gevoel.
dit is wat ik momenteel heb:
1ste pagina
Code (php)
1
2
3
4
2
3
4
<?php session_start();
if(isset($_POST[submit])){
$_SESSION['gesl'] = $_POST[gesl];
header('Location:pagina2.php');}?>
if(isset($_POST[submit])){
$_SESSION['gesl'] = $_POST[gesl];
header('Location:pagina2.php');}?>
het formulier:
<form action=" echo $_SERVER['PHP_SELF']; ?> " method="post">
<select name="gesl" class="opt1">
<option class="selc1">maak keuze</option>
<option class="selc1">heren</option>
<option class="selc1">dames</option>
<input type="submit" name="submit" value="verfijn" class="knop"/></form>
en op pagina2:
maar ik kom op de pagina terecht maar ontvang mij variable niet.
Kan mij iemand helpen, heb al vanalles geprobeert
even beter geprobeert te noteren
Toevoeging op 29/09/2012 17:30:00:
Nee de bedoeling is om het op pagina twee op te vragen, maar het is dat dat niet lukt? om dan verder te werken met dit variabel
Bedankt voor de verbetering, nu valt het wat gemakkelijker te lezen.
Bij het formulier schuif je een waarde aan de sessie, maar welke waarde bevat $gesl? die je op de 2e pagina aanroept.
Het antwoord is reeds gegeven door Cas.
dus mijn bedoeling is om met dit formulier op pg1 een waarde te geven aan de sessie en probeer die waarde op te vragen in pg2 om er zo als variabele er verder te mee werken
Ooooh, dan moet je $gesl = $_SESSION['gesl']; neerzetten, andersom dus.
Maakt het allemaal net wat makkelijker om te lezen.
t.a.v. je code:
gebruik geen short-tags.
$_SERVER['PHP_SELF'] wordt als onveilig betiteld.
Controleren of een formulier verzonden is: $_SERVER['REQUEST_METHOD'] == 'POST'
Waarom gesl en niet voluit? Gebruik duidelijke namen.
Waarom naar dezelfde pagina verwijzen, een sessie aanmaken en dan naar een nieuwe pagina? Je kunt a) alles in 1 bestand afhandelen of b) die action laten verwijzen naar pg2 ($_POST['gesl'] is daar ook bekend).
ja, weet ik maar heb die waarde ook nodig in andere pagina's