【问题标题】:Reducing code while posting inputs to database?在将输入发布到数据库时减少代码?
【发布时间】:2014-03-12 02:44:57
【问题描述】:

我有几个输入需要基本上相同的代码行,只是针对数据库中的不同位置进行了更改(由 columnA 确定)。有什么方法可以创建一个简单的循环来尽量减少我必须使用的手动代码量?

第一步:获取变量 $w1001a = $_POST['w1001a']; $w1001b = $_POST['w1001b']; …… $w1025b = $_POST['w1025b']; 第二步:更新数据库 mysqli_query($conn, "更新表 SET 内容 = '$w1001a' WHERE columnA='w1001a'"); mysqli_query($conn, "更新表 SET 内容 = '$w1001b' WHERE columnA='w1001b'"); …… mysqli_query($conn, "更新表 SET 内容 = '$w1025b' WHERE columnA='w1025b'");

提前致谢!

【问题讨论】:

    标签: php sql database


    【解决方案1】:

    只是提示:

    for ($i=1; $i<=25; $i++)
        for ($j='a'; $j<='b'; $j++) {
            $k = 'w10'.str_pad($i, 2, '0', STR_PAD_LEFT).$j;
            mysqli_query($conn, 'UPDATE table SET content=\''.$_POST[$k].'\' WHERE columnA=\''.$k.'\'');
        }
    

    注意:您需要使用参数化查询或至少转义字符串以避免 SQL 注入

    【讨论】:

      猜你喜欢
      • 2014-07-12
      • 2018-01-02
      • 2019-06-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-01-29
      • 1970-01-01
      • 2023-03-17
      相关资源
      最近更新 更多