database - 每次页面登录或重新加载后如何增加数据库计数器?
问题描述
我正在开发一个学校门户网站,要求学生使用刮刮卡检查他们的成绩。我希望每张刮刮卡在用于检查结果 5 次后过期。我的 MYSQL 数据库表有以下字段:
id regno pin serial count
我希望在学生使用他/她的刮刮卡登录后计数字段增加,直到达到 5。
这是我的代码片段:
for($counter=1; $counter<=5; $counter++){
$sql = "UPDATE `{$table}` SET `count`= '{$counter}' + 1,`time_used`='{$time}', `pin` = '{$pin}' ,`serial` = '{$serial}' WHERE `regno` = '{$regno}'";
}
计数field
只增加一次,并在多次登录尝试后停止。
解决方案
您可能只是将数据推送到表中,但将其中一列配置为自动增量。
所以不需要计数器,只需做一个 INSERT。
如果您无法修改数据库,则首先必须使用 SELECT 检查最新值,然后在刷新后递增和 INSERT。
推荐阅读
- android - 按钮上带有箭头的警报对话框
- javascript - 如何仅以角度显示来自firebase的搜索结果?
- php - Laravel update() 函数不更新任何字段
- node.js - 如何更新 Google Cloud Platform 旧版 GAE 和 GCF 元数据服务器端点
- java - Why the main thread doesn't terminate when there is a completion stage that has not been completed?
- java - 工具:showIn="navigation_view" 不工作
- ktor - Ktor 多平台 - 在 kotlin 中用于 iOS 的 SSL 固定
- class - 使用用户定义的函数编译类中的错误
- c++ - 如何最好地在我的 C++ 程序中使用相同的 Boost 日志?
- python - 为什么在 macOS Catalina v10.15.1 上导入 pysftp 时 Python 会抱怨 libcrypto?