1

我有一个简单的表格,带有一个名为“negwords”的文本区域。如果 textarea 中有数据,则每行都会被 \n 分解,然后我将这些值插入数据库中的一个名为“negatives”的表中,该表只有两个字段(id,negative)。

问题是,如果存在并提交了一个空的或空白的回车,我的数据库中就会出现一条空白记录。

如何避免从 textarea 提交空白或空行?

<form action="insert.php" method="post">
<textarea class="" cols="110" rows="30" name="negwords"></textarea>
    <input type="submit" name="submit" value="Submit" />
    </form>    
  </div>
  <div id="results">
<?php
include 'db_connect.php';

if(isset($_POST["negwords"]))
{
  //$negative_keyword = explode("\n", $_POST["negwords"]);

  $negative_keyword = array_filter(explode("\n", trim($_POST['negwords'])));
  foreach($negative_keyword as $key => $phrase)
{
    $phrase=trim($phrase);
    $sql = "INSERT IGNORE INTO negatives (negative) VALUE ('{$phrase}')";

    mysql_query($sql);
}
}
?>
4

1 回答 1

0

替换mysql_query($sql);

if (strlen($phrase) > 0) { mysql_query($sql); }

另外,作为旁注:我强烈建议从已弃用的 mysql 切换到 mysqli。

于 2012-08-13T08:24:16.400 回答