【发布时间】:2015-06-08 09:11:34
【问题描述】:
我有一个如下所示的数据库:
+----------+----------+---------+----------+
| bogie_id | train_id | axle_nr | bogie_nr |
+----------+----------+---------+----------+
| 1 | 1 | 1 | |
| 2 | 1 | 2 | |
| 3 | 1 | 3 | |
| 4 | 1 | 4 | |
+----------+----------+---------+----------+
如您所见,"bogie_nr" 行是空的。
不,我想做一个 if 语句,检查行是空的还是填充的。
我目前拥有的:
<div id="bogiebox">
<tr>
<?php
$x = 1;
foreach($show_axle as $bogiebox){ ?>
<input type='hidden' name='bogie_id[<?php echo $bogiebox['bogie_id']?>]' value='<?php echo $bogiebox['bogie_id']?>'>
<td>
<?php
if($bogiebox['bogie_nr'] == ''){
?>
<input type='checkbox' id="bogie_axle_fields" value="<?= $x ?>" name='bogie_nr[<?php echo $bogiebox['bogie_id']?>]'></td>
<?php
}
else{
?>
<input type='checkbox' id="bogie_axle_fields" checked disabled></td><?php } }
?>
</tr>
</div>
然后是 if 语句:
<?php
if(isset($_POST['y'])){
$bogiefilledin = false;
if(!empty($_POST['bogie_nr'])) {
echo "everything is full?";
}
else {
echo "Fill in some more fields";
}
}
?>
还没有完成!但它应该做的是:
我们选中一个复选框或 2. 按下发送按钮,数据库为 2 个选定的转向架插入数字 1。然后页面刷新,所有复选框的值都应该为 2。在下一次插入时,它们将插入值 2。依此类推。
但是,我想要什么 = 如果我这样填写我的数据库:
+----------+----------+---------+----------+
| bogie_id | train_id | axle_nr | bogie_nr |
+----------+----------+---------+----------+
| 1 | 1 | 1 | 1 |
| 2 | 1 | 2 | 1 |
| 3 | 1 | 3 | 2 |
| 4 | 1 | 4 | |
+----------+----------+---------+----------+
我想查看 else 语句(填写更多字段)。因为第四轴还没有在转向架上。
现在 if else 语句向我显示:当我选择 1 并按提交时,它说:"everything is full!"。当我什么都不选时,它会说:“填写更多字段。”。但是它还没有插入任何东西,所以它应该总是说:Fill in some more fields!。
我该怎么做?
【问题讨论】:
-
bogie_nr 是一列而不是一行
-
我已经回答了您过去的一些转向架/车轴/火车问题(当您完成该项目时,您应该将获得的所有帮助归功于 SO:P),但这一个很难理解:不清楚
if你有什么问题,需要发送什么,甚至是过程的基本逻辑:什么是y,这很重要吗?你在哪里/如何插入数据?你说它不是为第4轴插入数据,但你没有显示负责的代码或插入的逻辑。
标签: php html database insert statements