这是我的代码:
<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) . '"';
}
}
我希望这只插入已填充的字段,例如,如果前两个输入已填充,请插入并跳过最后一个为空的字段。
答案 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) . '"';
}
}
但是,我会认真考虑切换到进行某种表单验证的框架。我听到有关cakePHP和CodeIgniter的好消息,可能值得一试。