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";
相关推荐
-
php表单提交与$_POST实例分析
本文实例分析了php的表单提交与$_POST.分享给大家供大家参考.具体如下: 这里要注意:表单 checkbox 的 name 需要以数组形式来命名. 表单文件:index.php 复制代码 代码如下: <form action="b.php" method="post"> 用户名:<input type="text" name="username"><br /> 密码:<input
-
php实现信用卡校验位算法THE LUHN MOD-10示例
按照ISO 2894中支付卡校验位的算法 The Luhn Mod-10 Method 规定: 1.对卡号上的每位数字乘以权重.其规则是,如果卡号数字个数是偶数,则第一位乘以2,否则就乘以1,然后以后分别是,1,2,1,2,1,2;2.如果每位数字乘以权重后超过9 ,则需要减去 9;3.将所有的处理过的加权数字求和,用 数字 10 求模运算;4.余数应该是0,否则可能是输入错误.也可能是一个假号. 顺手PHP简单实现下,实际场景前端验证好一些,例如JS. 复制代码 代码如下: function
-
使用php+Ajax实现唯一校验实现代码[简单应用]
首先创建一个Ajax类(Ajax类) 然后新建一个文件form.html --------------------------form.html---------------------------- 复制代码 代码如下: <script src="ajax.js"></script> <!--引用ajax类--> <script language="javascript" type="text/javascrip
-
php校验表单检测字段是否为空的方法
本文实例讲述了php校验表单检测字段是否为空的方法.分享给大家供大家参考.具体如下: php校验表单,检测字段是否为空,当表单中有未填写的字段,则会显示错误信息. <html> <body> <form METHOD="POST" ACTION="ErrorCheck.php"> <h1>Contact Information</h1> <label>Nickname:</label>
-
php+html5使用FormData对象提交表单及上传图片的方法
本文实例讲述了php+html5使用FormData对象提交表单及上传图片的方法.分享给大家供大家参考.具体分析如下: FormData 对象,可以把form中所有表单元素的name与value组成一个queryString,提交到后台.在使用Ajax提交时,使用FormData对象可以减少拼接queryString的工作量. 使用FormData对象 1.创建一个FormData空对象,然后使用append方法添加key/value 复制代码 代码如下: var formdata = new
-
php获取从html表单传递数组的方法
本文实例讲述了php获取从html表单传递数组的方法.分享给大家供大家参考.具体如下: 将表单的各个元素的name都设置成同一个数组对象既可以以数组的方式传递表单值 html页面如下: <form method="post" action="arrayformdata.php"> <label>Tags</label> <input type="text" name="tags[]"/
-
php正则校验用户名介绍
<?php if (mb_ereg("^[\w\-\.]{1,32}$", $str)) { echo 'yes'; } else { echo 'no'; } ?>
-
PHP校验ISBN码的函数代码
详细资料可以参考:国际标准书号 – 维基百科,下面还是简述一下什么是ISBN码: 国际标准书号(International Standard Book Number,ISBN:拟发音is-ben),是国际通用的图书或独立的出版物(除定期出版的期刊)代码.出版社可以通过国际标准书号清晰的辨认所有非期刊书籍.一个国际标准书号只有一个或一份相应的出版物与之对应.新版本如果在原来旧版的基础上没有内容上太大的变动,在出版时也不会得到新的国际标准书号码.当平装本改为精装本出版时,原来相应的国际标准书号号码也
-
php生成SessionID和图片校验码的思路和实现代码
/****** 产生Session ID ******/ 基本的思路: 是把当前微秒的时间获取, 然后产生以个随机数字, 把随机数字和当前时间相加后加密一下, 最后再截取需要的长度 /* 函数名称:create_sess_id() 函数作用:产生以个随机的会话ID 参 数:$len: 需要会话字符串的长度,默认为32位,不要低于16位 返 回 值:返回会话ID 函数作者:heiyeluren */ function create_sess_id($len=32) { // 校验提交的长度是否合法
-
PHP处理大量表单字段的便捷方法
关于程序开发中的表单批量提交策略 很多时候一个表单太多的字段,如何能够高效获取表单字段,也为如何提神开发的效率和统一性? 比如一个系统的某个有26个字段,那么我用表单的名称用26个a到z的字母, 你是选择 <input type="text" name="a">,<input type="text" name="a">,--,<input type="text" name=&q
-
php上传图片获取路径及给表单字段赋值的方法
本文实例讲述了php上传图片获取路径及给表单字段赋值的方法.分享给大家供大家参考,具体如下: 1. 调用方法例子: 大图路径: <input type="text" name="bigImageURL" id="bigImageURL" value=""> <iframe src="uppic.php?id=bigImageURL" width="600" height
-
JS获取一个表单字段中多条数据并转化为json格式
如图需要获取下面两个li标签里面的数据,然后传给后台:而后台接收的数据格式是json的,所以需要把两个li里面的信息转化为以下格式的. {recieverName:小红,recieverPhone:12341234,recieverAddress:中国湖南},{recieverName:小明,recieverPhone:12345678,recieverAddress:中国上海} 代码如下: var recieverArr = []; //全局变量 var recieverMsg = {}; /
-
django-xadmin根据当前登录用户动态设置表单字段默认值方式
相信你一定会设置一个普通字段的默认值: class Offer(models.Model): salary = models.CharField(max_length=64, blank=True, default='6000', verbose_name='薪资待遇') 相信你还能动态设置外键字段的默认值: class Interview(models.Model): department = models.ForeignKey('departments.Department', relate
-
vue使用rules实现表单字段验证
vue 中表单字段验证的写法和方式有多种,本博客介绍三种较为常用的验证方式. 1. 写在 data 中验证 表单内容 <!-- 表单 --> <el-form ref="rulesForm" :rules="formRules" :model="rulesForm" label-width="200px"> <el-form-item label="用户名称:" prop=&q
-
比较不错的asp单表单字段多条件查询
用途:文章表内文章关键字查询 查询格式: 百度 google 百度好还是google好 百度+google (也可不输入条件全部查询) <!--#include file="conn.asp"--> <% Function SearshSQL(Tname,Lname,Str) 'Tname-表名 Lname-列名 Str-查询的字符 If Trim(Str)="" then MySql="Select * From &q
-
ASP.NET中实现Form表单字段值自动填充到操作模型中
我们知道ASP.NET MVC有个强大的地方就是Form表单提交到action的时候,可以直接将Form的参数直接装配到action的参数实体对象中 比如 复制代码 代码如下: action方法 Register(UserModel userModel) { ............................. } 在提交表单的时候,会自动讲表单里面的字段封装到对应的UserModel字段里面 那么 WebForm里面可不可以也紫将呢? 因为每次都要去获得数据,优秀的程序员应该要学会代码封
-
ajax来自动补全表单字段示例
源代码: 脚本一: <!DOCTYPE html> <html> <head> <title>Auto-fill Form Fields</title> <link rel="stylesheet"href="script06.css" rel="external nofollow" > <script src="script06.js">&l
-
vue 使用rules对表单字段进行校验的步骤
在实际开发过程中,发现以下的写法比较累赘,因为在后面的项目中,继续优化表单验证的方法,让代码更简洁.主要的修改是验证方法的修改和调用 以前验证表单字段的最大长度,description: [{ max: 200, message: '最大长度为200个字符', trigger: 'blur' }] 现在写法:description: [validateLen(200)] 其中,validateLen是我封装的一个方法. 使用步骤: 1.在uitls文件夹中新建一个validate.js文件. 2
-
简单了解Ajax表单序列化的实现方法
原生表单序列化 随着Ajax的出现,表单序列化已经成为一种需求,在学习原生Ajax时,若用POST方法向后台提交数据时,就需要将表单序列化 在JavaScript中可以利用表单字段的type属性,连同name和value属性,一起实现表单的序列化. 在进行表单序列化之前,需要弄清楚在表单提交期间,浏览器是怎样将数据发送给服务器的. --对表单字段的名称和值进行URL编码,使用和号(&)分隔 --不发送禁用的表单字段 --只发送勾选的复选框和单选按钮 --不发送type为"reset&qu
随机推荐
- windows下MySQL5.6版本安装及配置过程附有截图和详细说明
- 基于Jquery的实现回车键Enter切换焦点
- 使用jQuery的toggle()方法对HTML标签进行显示、隐藏的方法(示例)
- java实现分段读取文件并通过HTTP上传的方法
- hibernate4基本配置方式详解
- Django实现快速分页的方法实例
- Node.js之网络通讯模块实现浅析
- asp.net 枚举文件里面的数字绑定到DropDownList里面去
- 详解C# 匿名对象(匿名类型)、var、动态类型 dynamic
- windows下在一台机器上安装两个MYSQL数据库的方法
- Android实现QQ抢红包插件
- 疯掉了,尽然有js写的操作系统
- js实现连续英文字符自动换行兼容ie6 ie7和firefox
- JS实现的在线调色板实例(附demo源码下载)
- php在linux中可能用到的命令(推荐)
- 将MS SQL SERVER数据库运行在普通用户(独立用户)状态下的设置方法终结篇
- jQuery封装的获取Url中的Get参数示例
- jQuery对象[0]是什么含义?
- 使用jQuery模板来展现json数据的代码
- java验证电话号码的方法