在将输入发布到数据库时减少代码?

时间:2014-03-12 02:44:58

标签: php sql database

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

    Step One: Get variables
      $w1001a = $_POST['w1001a'];   
      $w1001b = $_POST['w1001b'];
      ....
      $w1025b = $_POST['w1025b'];

    Step Two: Update database
      mysqli_query($conn, "UPDATE table SET content = '$w1001a' WHERE columnA='w1001a'");   
      mysqli_query($conn, "UPDATE table SET content = '$w1001b' WHERE columnA='w1001b'");
      ....
      mysqli_query($conn, "UPDATE table SET content = '$w1025b' WHERE columnA='w1025b'");

提前致谢!

1 个答案:

答案 0 :(得分:0)

只是提示:

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注入