Hoi allemaal,

Ik zit met een vraagje, ik ben opzoek naar een script en die werk ongeveer zo..

Ik heb zeg maar een forum nu als iedereen daar naar toegaat kom je op de index.php terecht.. maar ik heb een pagina met een paar rules en die heet access.php nu wil ik dat iedereen eerst word door geschakkeld naar access.php en daar de rules of een link aan klikken voordat ze de index.php kunnen zien.. dus ook als je zeg maar op
forumlist.php of online.php binnen komt dat je dan ook eerst naar access.php gaat voor dat je die pagina's kunt zien.. geloof dat het met cookies werkt of zo..

Ik weet het ook niet precies want ben nog maar net bezig met php en heb niet zoveel verstand ervan zeg maar gerust geen verstand ervan

maar hoop dat iemand me kan helpen

groetjes nikki

Wil je dat bij elk bezoek die pagina tevoorschijn komt? Of 1 keer en daarna hoeft het niet meer.
Anders kan je namelijk beter met sessies werken..

Het zal ongeveer zo eruitzien:
<?
#readacces.php#
// Controleert of de terms zijn gelezen
// Deze includen op de pagina's die je alleen mag bezoeken als je de terms hebt gelezen
if(!isset($_SESSION['acces']))
{
header("Location: acces.php?from=".$_SERVER['REFERER']."");
exit;
}

#acces.php#
// De terms met een form om te accepteren
if(!isset($_POST['submit']))
{
?>
#Terms of use
<form method="post" action="<?= $_SERVER['PHP_SELF'];?>">
Decline<input type="radio" name="akkoord" value="Decline">Accept<input type="radio" name="akkoord"><br>
<input type="hidden" name="from" value="<?= $_GET['from']; ?>">
<input type="submit" name="submit" value="Proceed">
</form>
<?
}
else
{
// Sessie waarde geven dat Terms gelezen zijn
$_SESSION['acces'] = "TRUE";
echo '<meta http-equiv="refresh" content="0;'.$_POST['from'].'">';
}
?>
Hoi Willem-Jan,

dankje ik ga het gelijk uitproberen, maar nog een klein vraagje, is het mogelijk om zo'n radio button op je index.php te zetten en als je dan akkoord aanvink en op proceed druk dan pas het content van de index.php te zien krijg.. weet niet of dat moglijk is

alvast bedankt
nikki
Je kan die controlecode op je index includen,
dan gaat hij automatisch naar acces.php om de radiobuttons te laten zien.
Hoi Willem,

Bedankt voor je hulp, maar als ik dit stukje code in mijn index.php include

<?
#readacces.php#
// Controleert of de terms zijn gelezen
// Deze includen op de pagina's die je alleen mag bezoeken als je de terms hebt gelezen
if(!isset($_SESSION['acces']))
{
header("Location: acces.php?from=".$_SERVER['REFERER']."");
exit;
}


En de rest van de code doe ik in acces.php. en ik point mijn browser naar www.blbl.nl/index.php word ik netjes door geschakkeld naar acces.php maar als ik dan accept aanklik en druk op proceed blijf ik gewoon op acces.php, inplaats dat ik nu de index.php kan zien..

Doe ik misschien iets verkeerd? Ik weet het ook niet ben ook maar een newbie in dit soort dingen

Naar mijn mening moet je in index.php als een gebruiker op accept klikt de gebruiker de $_SESSION['acces'] = 1 meegeven en doorsturen met de header location naar index sturen.

LET OP de session_start() regel aan de bovenkant van acces.php EN index.php
Dus in index.php

<?php
session_start();
#readacces.php#
// Controleert of de terms zijn gelezen
// Deze includen op de pagina's die je alleen mag bezoeken als je de terms hebt gelezen
if(!isset($_SESSION['acces']))
{
header("Location: acces.php?from=".$_SERVER['REFERER']."");
exit;
}
?>

en acces.php

<?php
session_start();
if(!isset($_POST['submit']))
{
$_SESSION['acces'] = 1;
header("Location: index.php");
} else {
echo '
<form method="post" action="'.$_SERVER['PHP_SELF'].'">';
//hier je voorwaarden
echo '
<input type="submit" name="submit" value="Accepteren">
</form>';
}
?>
Hoi Barman,

Sorry dit is allemaal nieuw voor mijn dus begrijp niet echt wat je bedoel.. ik ben geen coder of wat dan ook ben al blij als ik een script aan de praat krijg =)

maar toch bedankt
ow dankje Barman..
gaat het gelijk ff uitproberen
Hoi Barman,

Ik krijg deze fout met jou stukje code

Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at /home/blblb/public_html/acces.php:2) in /home/blblb/public_html/acces.php on line 3

Warning: Cannot modify header information - headers already sent by (output started at /home/blblb/public_html/acces.php:2) in /home/blblb/public_html/acces.php on line 7
Je moet geen enters spaties of tabs boven

<?
session_start();
?>

Hebben staan :)

Reageren