【发布时间】:2017-01-13 22:33:23
【问题描述】:
我有一个使用单选按钮的表单,这个按钮决定它是否显示一条数据:
<input type="radio" name="IncludeData" value="1" />Yes
<input type="radio" name="IncludeData" value="0" />No
是 = 1,否 = 0。
然后我使用这个查询来调用数据:
$IncludeData = $_POST['IncludeData'];
$sql = "SELECT data1, data2, data3, IF($IncludeData='0',Null,data4), data4, data5 FROM Database ORDER BY data1 asc";
我已尝试遵循此问题的答案:MYSQL hide field data if value in another field is set。
但是,无论我在单选按钮上选择什么,它似乎总是保留数据。任何帮助将不胜感激。
这是我从中获取数据的地方:
<td>
Sort table on =
<select name="Sort">
<option value="data1" selected="selected">Example1</option>
<option value="data2">Example2</option>
<option value="data3">Example3</option>
<option value="data4">Example4</option>
<option value="data5">Example5</option>
</select>
</td>
【问题讨论】:
-
在那之后你的字段中也有
data4。所以当你选择No时,你会得到data1, data2, data3, NULL, data4, data5,当你选择Yes时,你会得到data1, data2, data3, data4, data4, data5。 -
也许你的意思是作为这个
IF的别名,所以它应该是IF(...) AS data4。 -
一开始我也这么认为@Barmar。但是当我从 IF 语句之后删除
data4时,什么都没有显示。即使我选择了是... -
你如何显示这个字段?您是否为
IF()提供了别名,以便您可以通过名称引用它? -
您需要发布更多代码,以便我们了解您是如何访问查询结果的。