hallo,
ik heb weer eens een raar stukje. Soms is het voor mij net abra-ka-drabra...
Maar ik heb dus het volgende idee:
-Als mensen zich registreren kunnen ze ja of nee kiezen om de nieuwsbrief te ontvangen.
-Als ze inloggen wordt er in het database gekeken of ze ja of nee hebben gekozen.
- Als het ja is wordt er een session geschreven.
(- Als je ingelodg bent wordt je automatisch naar de homepage geleid.)
- Op de homepage wordt het registreerform verborgen als er bij het inloggen de session is geschreven.
- Als dit niet zo is wordt het form weergegeven.
Ik heb deze code verzonnen bij het inloggen:
En op de homepage dit:
(Hierboven staan de db gegevens)
Waarom krijg ik nu als ik niet eens ben ingelogd de melding te zien dat ik al ben ingelogd?

Ginojo
ik heb weer eens een raar stukje. Soms is het voor mij net abra-ka-drabra...

Maar ik heb dus het volgende idee:
-Als mensen zich registreren kunnen ze ja of nee kiezen om de nieuwsbrief te ontvangen.
-Als ze inloggen wordt er in het database gekeken of ze ja of nee hebben gekozen.
- Als het ja is wordt er een session geschreven.
(- Als je ingelodg bent wordt je automatisch naar de homepage geleid.)
- Op de homepage wordt het registreerform verborgen als er bij het inloggen de session is geschreven.
- Als dit niet zo is wordt het form weergegeven.
Ik heb deze code verzonnen bij het inloggen:
PHP:
<?php
if(mysql_num_rows(mysql_query("SELECT newsletter FROM users WHERE newsletter='Yes'")) == 1)
{
$_SESSION['news'] = '1';
} else { }
?>
En op de homepage dit:
(Hierboven staan de db gegevens)
PHP:
<?php
if($_SESSION['news'] != '1') {
?>
<h3 style="font-style: italic;">Newsletter...</h3><br>
You are already signed up for our newsletter. You do not have to sign up any more...
<?
} else {
?>
<h3 style="font-style: italic;">Newsletter...</h3><br>
Sign up for our newsletter. It's free and you get first the news about The Digitcompany!!!<br><br>
<?php
if (isset($_POST['Name']) && isset($_POST['Email'])) {
if ($_POST['Name'] == "" || $_POST['Email'] == "") {
print_error();
print_for();
} else {
$Name = $_POST["Name"];
$Email = $_POST["Email"];
$ip = getenv('REMOTE_ADDR');
$data = "page/uit/txts/newsletter.txt";
$file = fopen($data , "a");
$tijd = time();
$datum = strftime("%d/%m/%y %H:%M", $tijd);
fputs($file, "
De volgende wilt zich inschrijven voor The Digitcompany nieuwsbrief:
Naam: $Name
Email: $Email
Ip-adres: $ip
--------------------------------------------------------------------
");
fclose($file);
print_sent();
}
} else {
?> <form name="form1" method="post" action="index.html">
Name: <br />
<input name="Name" value="" type="text" /><br />
<br />
Email: <br />
<input name="Email" value="" type="text" /><br />
<br />
<input name="Submit" value="Send" type="submit" />
</form>
<? }
function print_error() {
?>
<table width=100%>
<tr><td><p style="color: rgb(255, 0, 0);">Fill in all the fields correctly, please...</p></td></tr>
</table>
<?
}
function print_sent() {
?>
<table width=100%>
<tr><td><p style="color: rgb(96, 96, 96);">Thank you! You're subscribed for the Digit Company newsletter!</p></td></tr>
</table>
<?
}
}
?>
Waarom krijg ik nu als ik niet eens ben ingelogd de melding te zien dat ik al ben ingelogd?

Ginojo