如何只插入填充的文本输入?

时间:2009-12-15 04:16:35

标签: php mysql

这是我的代码:
<input type="text" name="text[]" />
<input type="text" name="text[]" />
<input type="text" name="text[]" />

if (!empty($_POST['text'])) {
foreach ($_POST['text'] AS $value) {
    // add to the database
    $sql = 'INSERT INTO tableName SET fieldName = "' . mysql_real_escape_string($value) . '"';
}

}

我希望这只插入已填充的字段,例如,如果前两个输入已填充,请插入并跳过最后一个为空的字段。

2 个答案:

答案 0 :(得分:2)

您已使用empty()检查$_POST您还可以使用它来检查$value

if (!empty($_POST['text'])) {
foreach ($_POST['text'] AS $value) {
    // add to the database
    if (!empty($value))
      $sql = 'INSERT INTO tableName SET fieldName = "' . mysql_real_escape_string($value) . '"';
}

答案 1 :(得分:1)

解决问题最困难的方法是检查文本数组中每个元素的字符串长度。

foreach( $_POST['text'] as $value ) {
    if( !empty( $value ){
        // add to the database
        $sql = 'INSERT INTO tableName SET fieldName = "' . mysql_real_escape_string($value) . '"';
    }
}

但是,我会认真考虑切换到进行某种表单验证的框架。我听到有关cakePHPCodeIgniter的好消息,可能值得一试。