防止MySQL用空字符串更新列?

时间:2013-02-05 21:12:29

标签: php mysql validation

找到了这个答案helpful,但我有大约100个需要更新的输入。

我目前有这个代码用于清理值:

foreach($_POST as $key => $value) {
$data[$key] = filter($value);}

我是否可以将上述链接中的答案添加到此代码中以影响所有100个输入,或者我将被强制在每个输入上添加IF子句。

谢谢。

1 个答案:

答案 0 :(得分:1)

$update_arr = array();
foreach ($_POST as $key => $value)
{
    if (strlen($value) !== 0)
    {
        $update_arr[] = $key.' = "'.filter($value).'"';
    }
}
$update_string = implode(',',$update_arr);
$table = '';
$where = '';

$format = "UPDATE %s SET %s WHERE %s";
$sql = sprintf($format,$table,$update_string,$where);