在2x4表格中显示表格数据(50个不同的下拉列表)
问题描述:
我有一个包含超过50种不同下拉菜单的表格。用户只能从50个中选择8个,因此我希望获得2x4表格。现在,我有一个设置为0的变量$ selectCount。每次选择下拉菜单时,我都会将1(++ $ selectCount)添加到变量中。然后,我有以下代码:在2x4表格中显示表格数据(50个不同的下拉列表)
if ($selectCount = 2) {
echo "</tr><tr>";}
if ($selectCount = 4) {
echo "</tr><tr>";}
if ($selectCount = 6) {
echo "</tr><tr>";}
不知什么原因对我来说,即使在情况下,其中$ selectCount的值是奇数,表行结束创建的1x8表。
下面是代码的,以更好地详细的较大部分的问题:
<tr>
<?php if(!empty($_POST['one'])) {
echo "<td><img src='image folder/acct.jpg' style='display:inline; -moz-border-radius: 10px; -webkit-border-radius: 10px; -webkit-box-shadow:0 0 20px blue; -moz-box-shadow: 0 0 20px blue; box-shadow:0 0 20px;'/>";
echo "<p style='color:white; margin-left: 7px; font-size: 14px;'>" . $_POST['one'] . "</p></td>";
$selectCount = ++$selectCount;
if ($selectCount = 2) {
echo "</tr><tr>";}
if ($selectCount = 4) {
echo "</tr><tr>";}
if ($selectCount = 6) {
echo "</tr><tr>";}
}
?>
<?php if(!empty($_POST['two'])) {
echo "<td><img src='image folder/alyt.jpg' style='display:inline; -moz-border-radius: 10px; -webkit-border-radius: 10px; -webkit-box-shadow:0 0 20px blue; -moz-box-shadow: 0 0 20px blue; box-shadow:0 0 20px;'/>";
echo "<p style='color:white; margin-left: 7px; font-size: 14px;'>" . $_POST['two'] . "</p></td>";
$selectCount = ++$selectCount;
if ($selectCount = 2) {
echo "</tr><tr>";}
if ($selectCount = 4) {
echo "</tr><tr>";}
if ($selectCount = 6) {
echo "</tr><tr>";}
}
?>
<?php if(!empty($_POST['three'])) {
echo "<td><img src='image folder/ar.jpg' style='display:inline; -moz-border-radius: 10px; -webkit-border-radius: 10px; -webkit-box-shadow:0 0 20px blue; -moz-box-shadow: 0 0 20px blue; box-shadow:0 0 20px;'/>";
echo "<p style='color:white; margin-left: 7px; font-size: 14px;'>" . $_POST['three'] . "</p></td>";
$selectCount = ++$selectCount;
if ($selectCount = 2) {
echo "</tr><tr>";}
if ($selectCount = 4) {
echo "</tr><tr>";}
if ($selectCount = 6) {
echo "</tr><tr>";}
}
?>
<?php if(!empty($_POST['four'])) {
echo "<td><img src='image folder/blgs.jpg' style='display:inline; -moz-border-radius: 10px; -webkit-border-radius: 10px; -webkit-box-shadow:0 0 20px blue; -moz-box-shadow: 0 0 20px blue; box-shadow:0 0 20px;'/>";
echo "<p style='color:white; margin-left: 7px; font-size: 14px;'>" . $_POST['four'] . "</p></td>";
$selectCount = ++$selectCount;
if ($selectCount = 2) {
echo "</tr><tr>";}
if ($selectCount = 4) {
echo "</tr><tr>";}
if ($selectCount = 6) {
echo "</tr><tr>";}
}
?>
任何帮助不胜感激。
答
你是不是比较值,但给它们分配:
if ($selectCount = 2) {
应该是:
if ($selectCount == 2) {
或:
if ($selectCount === 2) {
第一if
语句将2
你的变量,总是评估为true
。
这适用于所有的比较。
你也可以减少3个if
语句1:
if (($selectCount % 2) === 0) {
echo "</tr><tr>";
}
这基本上说:如果你的变量通过2
所得的余数为0
。
谢谢jeroen指出这个疏忽! – user1809737 2013-03-21 15:13:18