waardes van pagina's doorgeven

Status
Niet open voor verdere reacties.

grizzlybeer

Gebruiker
Lid geworden
30 jan 2007
Berichten
58
Ik wil op een website een aantal verschillende pagina's maken, met op iedere pagina apart radio buttons. Nu wil ik de pagina's achterelkaar doorlopen en de verschillende waardes die bij de keuze van die radiobuttons horen, naar mezelf mailen. Ik heb het geprobeerd met een action en post methode, maar dan kan ik de waarde van 1 pagina doorgeven aan de volgende, maar als ik dan naar de daarop volgende pagina ga, is de eerste waarde weg. Ik heb al gekeken bij sessie, maar het lukt me maar niet. Kan iemand me verder helpen.
 
Bovenaan je pagina, voor enige output:

PHP:
session_start();

Dan zou je de waardes in $_SESSION moeten kunnen stoppen, en dan zouden ze onthouden moeten worden ;)

Als dat niet helpt, geef dan even je code, dan kunnen we kijken wat er fout gaat :)
 
de code

hierbij de code, is misschien wat omslachtig maar toch.
Het zijn 3 pagina's en onderaan staan de foutmeldingen die ik krijg:

Ik wil dus graag op iedere pagina 1 vraag met radiobuttons en dan na een aantal pagina's alle antwoorden naar mezelf kunnen mailen. ( Het kan via een database, maar ik wilde het ook zo proberen)



pagina1::


php:

<?php
session_start();

if($_SERVER['REQUEST_METHOD']=='POST')
{

if(isset($_POST['button']) && $_POST['button'] == 'volgende')
{

if(isset($_POST['toon']))
{
$_SESSION['geluid1'] = strip_tags($_POST['toon']);
header('location: pagina2.php');
exit();
}
else
{
print 'false';
}
}


}

?>

<form id="xxx-xxx-xxx" name="xxx-xxx-xxx" method="post" action="">
KORT:
<input type="radio" name="toon" id="radio" value="kort" />
<br />
LANG:
<input type="radio" name="toon" id="radio" value="lang" />
<br />
<input type="submit" name="button" id="button" value="volgende" />
</form>


pagina2::



<?php
session_start();
include_once('xxx-xxx-xxx');
?>
<?php

print $_SESSION['geluid1'];

if($_SERVER['REQUEST_METHOD']=='POST')
{

if(isset($_POST['button']) && $_POST['button'] == 'volgende')
{

if(isset($_POST['toon2']))
{

$_SESSION['geluid1'] = strip_tags($_POST['toon']);
$_SESSION['geluid2'] = strip_tags($_POST['toon2']);

header('location: pagina3.php');
exit();
}
else
{
print 'false, not correct';
}
}

}


?>


<form id="xxx-xxx-xxx" name="xxx-xxx-xxx" method="post" action="">
KORT:
<input type="radio" name="toon2" id="radio" value="kort" />
<br />
LANG:
<input type="radio" name="toon2" id="radio" value="lang" />
<br />
<input type="submit" name="button" id="button" value="volgende" />
</form>


pagina3::


<?php
session_start();
include_once('xxx-xxx-xxx');
?>
<?php

$waarde1 = $_SESSION['geluid1'];
$waarde2 = $_SESSION['geluid2'];

print $waarde1;
print '<br/>';
print $waarde2;

?>

FOUTMELDINGEN DIE IK KRIJG

Warning: Cannot modify header information - headers already sent by::


regel:: print $_SESSION['geluid1']; en header('location: pagina3.php');
 
Als je session_start() of header() aan wil roepen, dan mag je nog geen HTML output verzonden hebben, anders werkt het niet.

Daarbij telt ook een witregel of spatie; dit zal dus niet werken:

Code:
<?php session_start(); ?>

omdat er een lege regel staat.

Probeer eens op pagina2.php dit weg te halen:
?>
<?php

weg te halen? Waarschijnlijk struikelt hij over de whitespace die daar tussen zit, namelijk.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan