hi
hoe kun je ervoor zorgen dat je b.v
maar 10 keer een formulier kan invullen
zodat je na dat is gebeurd een melding geeft
aan inschrijvingen bereikt kan niet meer op ingeschreven worden
is dat met een form te regelen
IP opslaan in database met een extra kolom om te tellen.
een if else maken met een mysql_num_rows en kijken of de IP al in de db zit.
Zoja, UPDATE query.
Zo nee, Insert query.
en dan op de form pagina ook een if else maken
if: aantal keer op te halen gelijk aan/kleiner is dan 10
form laten zien
else message van dat ze al 10x hebben gepost
Ong zoiets dus:
submit.php
<?php
if($_SERVER['REQUEST_METHOD'] == 'POST') {
$con = mysql_connect('localhost', 'root', 'pass');
if(!$con) {
exit("Connect error: ".mysql_error());
}
mysql_select_db('formposts', $con);
$q = "SELECT * FROM ipdata WHERE ip = '".$_SERVER['REMOTE_ADDR']."'";
$res = mysql_query($q);
if(!$res) {
exit("Query error: ".mysql_error());
}
if(mysql_num_rows($res) == 0) {
$q = "INSERT INTO ipdata (ip, times) VALUES('".$_SERVER['REMOTE_ADDR']."', 1)";
$res = mysql_query($q);
if(!$res) {
exit("Query error: ".mysql_error());
}
} else {
$q = "UPDATE ipdata SET times = times+1 WHERE ip = '".$_SERVER['REMOTE_ADDR']."'";
$res = mysql_query($q);
if(!$res) {
exit("Query error: ".mysql_error());
}
}
} else {
echo "Please use the form!";
}
?>
form pagina:
<html>
<head>
<title>
Form
</title>
</head>
<body>
<?php
$q = "SELECT times FROM ipdata WHERE ip = '".$_SERVER['REMOTE_ADDR']."'";
$res = mysql_query($q);
if(!$res) {
exit("Query error: ".mysql_error());
}
if($res =< 10) {
?>
<form action="submit.php" method="post">
<input type="text" name="name" />
</form>
<?php
} else {
echo "Je hebt al 10x gepost";
}
?>
</body>
</html>
hi
bedankt voor de snelle reactie
wat eigenlijk de bedoeling is
ik heb een ontvangstruimte waar plaats is voor b.v. 10 deelnemers
en zodra dat er 10 deelnemers zijn dat er niet meer ingeschreven kan worden
dat er een melding komt inschrijving niet meer mogelijk
Wat je gewoon moet doen is:
Bij iedere inschrijving in de db zetten wie hoe laat er binnen is gekomen...
Dan voer je een query uit die telt hoeveel resultaten er zijn, zijn dit er 10 dan mag je niet meer een formulier tonen anders wel.
Ga je er uit verwijder je die regel uit je database van die persoon.
bedankt voor de snelle hulp
en dan moet er twee mailtjes worden verstuurd
1 naar mijzelf en een naar diegene die hem heeft ingevuld
kan dat in dezelfde form