有两个字段的输入表单
Value of one field is 11
The second field is blank.
Field names are `date_day[]`
下面是我的代码:
foreach ($_POST['date_day'] as $i => $date_day) {
$strlen = (strlen($date_day));
echo $strlen .' strlen<br>';
}
但是我得到了这个:
2 strlen
0 strlen
基于以上,我希望代码将只插入到mysql中字符串大于0的数组元素
下面是插入的代码:
if ( (strlen($date_day)) > 0 ) {
$sql .= implode(', ', $insertQuery) . 'ON DUPLICATE KEY UPDATE RecordDay = VALUES(RecordDay);';
$stmt = $db->prepare($sql);
$stmt->execute($insertData);
}
但是,如果其中一个字段的字符串长度大于0,而另一个字段的字符串长度为0,则代码插入两个字段(第二个字段为空)。
我只需要插入字符串长度大于0的字段。如果为0,则不插入....错误在哪里(代码中需要更改什么)?
更改此代码
if ( (strlen($date_day)) > 0 ) {
$sql .= implode(', ', $insertQuery) . 'ON DUPLICATE KEY UPDATE RecordDay = VALUES(RecordDay);';
$stmt = $db->prepare($sql);
$stmt->execute($insertData);
}
if ( (strlen(trim($date_day))) > 0 ) {
$sql .= implode(', ', $insertQuery) . 'ON DUPLICATE KEY UPDATE RecordDay = VALUES(RecordDay);';
$stmt = $db->prepare($sql);
$stmt->execute($insertData);
}