Hallo mensen,

Op pagina 1 worden onderstaande sessions aangemaakt om vervolgens naar editor_nw_opdracht.php te gaan;

<?php 
session_start(); 
$_SESSION['edit'] = $_POST['edit']; 
$_SESSION['correctie'] = $_POST['correctie']; 
include "editor_nw_opdracht.php"; 
?> 


In editor_nw_opdracht.php (zie onderstaand stukje script) worden deze ook goed ge-echo-ed maar wanneer het formulier wat zich eronder bevind zich ververst blijft alleen $bestanden staan en $_SESSION['correctie'][$bestanden] wordt leeg. Hoe kan ik er nu voor zorgen dat deze ook blijft staan?

<?php 
session_start(); 
$_SESSION['edit'] = (empty($_POST['edit'])?$_SESSION['edit']:$_POST['edit']); 

$hoeveel = count($_SESSION['edit']); 
$_SESSION['hoeveel'] = $hoeveel; 
?> 
<HTML> 
<HEAD> 
<script type="text/javascript"> 
function ververs(formulier) 
{ 
sleutelstring="produkt="+formulier.produkt.options[formulier.produkt.options.selectedIndex].value; 
sleutelstring+="&uitvoering="+formulier.uitvoering.options[formulier.uitvoering.options.selectedIndex].value; 
location.href='bewerk_opdracht.php?'+sleutelstring ; 
} 
</script> 
<link rel="stylesheet" href="inc/style.css" type="text/css"> 
</HEAD> 

<BODY> 
<table border="0" cellpadding="0" cellspacing="0" width="760" height="500"> 
<tr valign="top"> 
<td width="760"> 
<?php 
echo'<tr><td colspan="3" class="kop3" height="22"> 
<b>Uw geselecteerde bestand(en) om samen te stellen</b>'; 
echo'</td></tr>'; 
foreach ($_SESSION['edit'] as $bestanden => $waarde) 
{ 
if (isset($alternate) && $alternate == "1") 
{ 
$color = "#efefef"; 
$alternate = "2"; 
} 
else 
{ 
$color = "#dedede"; 
$alternate = "1"; 
} 
?> 
<tr> 
<td width="750" height="22" class="kopBestand" bgcolor="<?php echo $color; ?>"> 
<?php 
echo $bestanden; 
echo'&nbsp;('.$_SESSION['correctie'][$bestanden].')'; 
} 
?> 
</td> 
</tr> 
</table> 
<p>            
<FORM METHOD="POST" ACTION="<?php echo $_SERVER['PHP_SELF']; ?>">


Ik heb onderstaande mogelijkheden al geprobeerd maar het geeft geen resultaat;

<?php 
$_SESSION['correctie'] = (empty($_POST['correctie'])?$_SESSION['correctie']:$_POST['correctie']); 
?>

en

<?php 
echo $bestanden; 
$_SESSION['correctie'] = $_SESSION['correctie'][$bestanden]; 
echo'&nbsp;('.$_SESSION['correctie'].')'; 
?> 
Run dit scriptje eens in een NIEUW LEEG bestandje:

<?
session_start();
if(!isset($_SESSION['FooBar']))
{
    $_SESSION['FooBar'] = 'Blaat';
    echo 'Session made';
}
echo $_SESSION['FooBar'];
?>


Ververs hem daarna. Staat er dan nog steeds Session made?

Even google-en etc. hoe je kan controleren of sessions wel aan staat :p
Ik ben er bijna, bedankt voor je ondersteuning Dennis, maar...
De $_SESSION['correctie'] die op pagina 1 wordt gemaakt komt voort uit een keuze dropdown tussen 'corrigeren' en 'niet corrigeren' van een pagina ervoor (zeg maar pagina 0). Wanneer ik jouw stukje script aanpas en kies voor 'niet corrigeren' en het formulier ververst zich dan springt hij op 'corrigeren'. Logisch, want dat heb ik in de isset geplaatst. Ik wil echter dat de keuze die gemaakt is op pagina 0 via de gemaakte session op pagina 1 blijft staan. Hoe doe ik dat?

<?php
echo $bestanden;
if(!isset($_SESSION['correctie'][$bestanden]))
{
    $_SESSION['correctie'][$bestanden] = 'corrigeren';
    echo '&nbsp;';
}
echo '&nbsp;('.$_SESSION['correctie'][$bestanden].')';
}
?>

Reageren