大量字段表单在PHP便捷处理分享
关于程序开发中的表单批量提交策略
很多时候一个表单太多的字段,如何能够高效获取表单字段,也为如何提神开发的效率和统一性?
比如一个系统的某个有26个字段,那么我用表单的名称用26个a到z的字母,
你是选择 <input type="text" name="a">,<input type="text" name="a">,……,<input type="text" name="z">的传统形式来做吗?
但是这种情况下如果做批量数据插入就不会有那么简洁了,
因为插入或者编辑操作会是这样的语句:特别是这样长得蛋疼的SQL字符串更悲催。
$sql="INSERT kele_table(a,b,……,z) value(a='$a',b='$b',……,z='$z')";//这样写很长铁牛用省略号标示 $sql="UPDATE SET kele_table(a='$a',b='$b',……,z='$z') where id=$id";
这样子写的话挺折腾的,字符串太长
用下面一种方法更好:
要点1:对整个提交的表单字段使用数组模式。
<input type="text" name="setting[a]">,……,<input type="text" name="setting[z]">
要点2:
PHP后台程序通过POST接收$setting数组
要点3:
插入表单字段展示
$fields=array('a','b',……,'z');//这个是特意设置校验字典,校验提交的字段是否存在 foreach($setting as $k=>$v) { if(in_array($k, $fields)) { $sqlk .= ','.$k; $sqlv .= ",'$v'"; } } $sqlk = substr($sqlk, 1); $sqlv = substr($sqlv, 1); $sql="INSERT INTO kele_table ($sqlk) VALUES ($sqlv)";
更新表单字段展示
$sql = ''; foreach($setting as $k=>$v) { if(in_array($k, $fields)) $sql .= ",$k='$v'"; } $sql = substr($sql, 1); $sql="UPDATE kele_table SET $sql WHERE id=$id";
微信号:tieniu6636
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· AI与.NET技术实操系列(六):基于图像分类模型对图像进行分类