【问题标题】:How to only allow server-side submissions only once a day如何每天只允许服务器端提交一次
【发布时间】:2014-10-28 21:23:22
【问题描述】:

我创建了一个简单的在线表单,提交后会将数据发送到我的服务器。

问题是我只希望使用表单的人只能“每天一次”使用表单,我该如何实现?

下面是输入表单和操作页面......

=============================

在线表格

<table  border="1" cellpadding="0" cellspacing="0" align="center" height="90%">
<tr>
<td style="align: center;">
<br>
<div style="font-family: Eurostile, Impact; font-size:18px; color: #9f9f9f; align: center;">before you</div></td>
</tr>
<tr>
<td style="text-align: center;">


<form name="RedpointsForm" action="http://blainevk.isexypartynetwork.net/redpoints/test-promo-upload.php" method="post" />
<input type="hidden" name="points" id="points" value="23">
<input type="hidden" name="useridV" id="useridV" value="56">

<input type="hidden" name="type" id="type" value="V">
<input type="hidden" name="date" id="date" value="<?php echo strtotime("now"); ?>">
<input type="hidden" name="notes" id="notes" value="iSexy Contest / Burkhart's Pub, 1233 Piedmont Ave. Atlanta, GA 30324">


<div style="font-family: Eurostile, Impact; font-size:18px; color: #9f9f9f; line-height:120%">User ID: <input type="input" name="userid" id="userid"></div><br>

<input type="image" src="rainbow.gif" name="image" width="60" height="60">
</form>

</td>
</tr>
</table>

=============================

动作页面

<?php
define('DB_NAME', 'XXXXXXXXX');
define('DB_USER', 'XXXXXXXXX');
define('DB_PASSWORD', 'XXXXXXXXX');
define('DB_HOST', 'localhost');

$link = mysql_connect(DB_HOST, DB_USER, DB_PASSWORD);

if (!$link) {
    die('Could not connect: ' . mysql_error());
}

$db_selected = mysql_select_db(DB_NAME, $link);

if (!$db_selected) {
    die('Can\'t use ' . DB_NAME . ': ' . mysql_error());
}

$value = $_POST['userid'];
$value2 = $_POST['useridV'];
$value3 = $_POST['type'];
$value4= $_POST['points'];
$value5= $_POST['notes'];
$value6= $_POST['date'];



$sql = "INSERT INTO bcse_points (userid, useridV, type, points, notes, date) VALUES ('$value','$value2','$value3','$value4','$value5','$value6')";

if (!mysql_query($sql)) {
    die('Error: ' . mysql_error());
}

mysql_close();

?>

======================

提前致谢。

期待回复, 布莱恩。

【问题讨论】:

  • 您还没有发布任何代码来表明您计划如何防止每天多次提交 - 因为这是您要解决的问题,所以发布此代码比发布此代码更合适提交表格。请参阅 how to ask a good question 上的 StackOverflow 指南,并编辑您的问题以提供您尝试解决的问题的最小、完整、可验证的示例

标签: server-side


【解决方案1】:

如果您的用户必须在填写任何表单之前登录,您只需通过外键将每个提交的表单连接到特定用户,然后您就会知道每个用户提交了哪些表单。

第二个想法是在您的数据库中创建一个数据表并存储已填写表格的设备的 IP 地址。每次提交后,您必须将计时器设置为 24 小时,当它到达结束时,将从数据库中删除 IP。

【讨论】:

    猜你喜欢
    • 2015-10-13
    • 1970-01-01
    • 2018-03-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-07-26
    • 2014-02-11
    相关资源
    最近更新 更多