Mensen,

Ik ben bezig het eea te proberen, maar krijg helaas de variabelen niet opgeslagen in sessies. Ik wil namelijk mensen 3 x iets laten invullen en verzenden, en op de laatste pagina moeten alle resultaten worden gelaten zien. Echter, hij laat alleen maar de laatste resultaat zien. Iemand een idee hoe dit te realiseren? Bijgaand mijn code:

<?php 
session_start(); 
$_SESSION['paginanummer'] == '0';
if(isset($_POST['getal1'])) $_SESSION['getal1'] = $_POST['getal1']; 
if(isset($_POST['getal2']))$_SESSION['getal2'] = $_POST['getal2']; 
if(isset($_POST['getal3']))$_SESSION['getal3'] = $_POST['getal3']; 
?> 
<html> 

<head> 

<title>Test</title> 

<link rel="stylesheet" type="text/css" href="css/main.css" /> 

</head> 

<body> 

<table align="center" border="0" class="table" cellpadding="0" cellspacing="0" width="705px"> 
    <tr> 
        <td colspan="2" style="background-image: url(img/i_header_02.jpg)" width="705" height="146"> 
        <h3>*******</h3></td> 
    </tr> 
    <tr> 
        <td style="background-image: url(img/i_nav_top.gif)" width="225" height="40"></td> 
        <td class="header" width="480px">Inschrijven</td> 
    </tr> 
    <tr> 
        <td class="menu" valign="top"><?php include('menu.html') ?> 
        <label class="footer">&copy; 2008, <a href="http://*******" target="_blank">*******</a></label></td> 
        <td class="content" valign="top"> 
       
        <form action="<?php ($_SERVER['PHP_SELF']) ?>" name="formulier" method="post"> 
       
        <?php 
                switch($_SESSION["paginanummer"]) 
                { 
                    case "1": 
                    { 
                    echo "Welkom op pagina 1<br /><br />"; 
                    $_SESSION["paginanummer"] = "2"; 
                    echo "".$_SESSION['getal1'].""; 
                ?> 
                    Graag alle velden invullen!<br /><br /> 
                    <input id="input2" type="text" name="getal2" /><br /><br /> 
                    <input class="inschrijven" type="submit" name="inschrijven2" value="Inschrijven" /> 
                <?php 
                    } 
                    break; 
                    case "2": 
                    { 
                    echo "Welkom op pagina 2<br /><br />"; 
                    $_SESSION["paginanummer"] = "3"; 
                    echo "".$_SESSION['getal2'].""; 
                ?> 
                    Graag alle velden invullen!<br /><br /> 
                    <input id="input2" type="text" name="getal3" /><br /><br /> 
                    <input class="inschrijven" type="submit" name="inschrijven3" value="Inschrijven" /> 
                <?php 
                    } 
                    break; 
                    case "3": 
                    { 
                    echo "Welkom op pagina 3<br /><br />"; 
                    $_SESSION["paginanummer"] = "0"; 
                    echo "".$_SESSION['getal1']."<br />"; 
                    echo "".$_SESSION['getal2']."<br />"; 
                    echo "".$_SESSION['getal3'].""; 
                ?> 
                    Graag alle velden invullen!<br /><br /> 
                    <input id="input2" type="text" name="getal4" /><br /><br /> 
                    <input class="inschrijven" type="submit" name="inschrijven4" value="Inschrijven" /> 
                <?php 
                    } 
                    break; 
                    default: 
                    { 
                    $_SESSION["paginanummer"] = "1"; 
                ?> 
                    <input id="input2" type="text" name="getal1" /><br /><br /> 
                    <input class="inschrijven" type="submit" name="inschrijven" value="Inschrijven" /> 
                <?php 
                    } 
                } 
                ?> 
       
        </form> 
       
        </td> 
    </tr> 
</table> 

</body> 

</html>
Als je alles even tussen [ignore]
[/ignore]-tags zet is het wat makkelijker leesbaar.
Ik zou in plaats van

 echo "".$_SESSION['getal1']."<br />"; 
                    echo "".$_SESSION['getal2']."<br />"; 
                    echo "".$_SESSION['getal3'].""; 

even

echo "<pre>";
print_r($_SESSION);
echo "</pre>";

neerzetten, dan krijg je alle sessies te zien.

Een paar andere foutjes:
$_SESSION['paginanummer'] == '0';
moet zijn
$_SESSION['paginanummer'] = '0';

<?php ($_SERVER['PHP_SELF']) ?> doet niks, je echo()t niets ;)

Je doet '$_SESSION["paginanummer"] = "2"; ', maar 2 is een integer, dus kun je die "" om de 2 heen weglaten ;)

- 500 posts! Nu ben ik officieel een PHPhelper! -

Reageren