Rumah  >  Artikel  >  pembangunan bahagian belakang  >  PHP如何便捷的处理大量表单字段

PHP如何便捷的处理大量表单字段

*文
*文asal
2017-12-25 14:50:441524semak imbas

有的时候,表单会有很多的字段需要我们进行处理。这样数据写起来非常的繁琐,有没有比较简洁优雅的方式呢?本文讲解一种使用数组的方式来快速、方便的处理大量表单数据的方法。希望对大家有所帮助。

关于程序开发中的表单批量提交策略
很多时候一个表单太多的字段,如何能够高效获取表单字段,也为如何提神开发的效率和统一性?

比如一个系统的某个有26个字段,那么我用表单的名称用26个a到z的字母,

你是选择 aa659494b7b9116fb2c3b00d614bcee3,aa659494b7b9116fb2c3b00d614bcee3,……,85da326bc9ec92a7ec01fedf617d25c6的传统形式来做吗?

但是这种情况下如果做批量数据插入就不会有那么简洁了,
因为插入或者编辑操作会是这样的语句:特别是这样长得蛋疼的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(&#39;a&#39;,&#39;b&#39;,……,&#39;z&#39;);//这个是特意设置校验字典,校验提交的字段是否存在
foreach($setting as $k=>$v) {
            if(in_array($k, $fields)) { $sqlk .= &#39;,&#39;.$k; $sqlv .= ",&#39;$v&#39;"; }
        }
        $sqlk = substr($sqlk, 1);
        $sqlv = substr($sqlv, 1);
    $sql="INSERT INTO kele_table ($sqlk) VALUES ($sqlv)";

更新表单字段展示

$sql = &#39;&#39;;
        foreach($setting as $k=>$v) {
            if(in_array($k, $fields)) $sql .= ",$k=&#39;$v&#39;";
        }
 $sql = substr($sql, 1);
 $sql="UPDATE kele_table SET $sql WHERE id=$id";

相关推荐:

php 表单验证实现代码

PHP 表单验证 - 验证 E-mail 和 URL

PHP 表单防止刷新提交的方法

Atas ialah kandungan terperinci PHP如何便捷的处理大量表单字段. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn