2016-10-03 58 views
0

经过大量搜索无效之后,我希望有人能帮助我弄清楚如何创建一个信息表,其中最后一列仅仅是一列广播每行按钮。事情是这样的:我如何在Mysql表中有一列单选按钮表

ID | First Name | last Name |Select 
1 | John  | Smith  | O (radio button) 

我基本上希望用户能够看到他们的屏幕放在桌上,并能够使用无线电按钮来选择某些行和执行某种功能像观看一个新表只是行。我只需要帮助创建最后一列。

+1

只要存储用于器isChecked一个布尔,然后当你绑定它检查是$ true和未选中是$ false –

+0

使用类型设置值是''0','1''因此,如果行['col'] = 1 echo'checked = checked'输入为ON –

回答

2

MySQL不存储“单选按钮”。这不是一个数据类型。

想想什么是“单选按钮”。显示屏上如何设置“单选按钮”的状态?状态如何以POST的形式传递回服务器?

“单选按钮”有一个名为“checked”的属性。那有一个TRUE或FALSE的值。

如果我们想在数据库表中存储一行“单选按钮”,我们真正想要存储的是“checked”属性的状态...... TRUE或FALSE。

在MySQL中做到这一点的一种方法是定义一个列。我们给列一个有意义的名字,但为了说明的缘故:

radio_button_state TINYINT(1) UNSIGNED NOT NULL DEFAULT '0' COMMENT 'boolean' 

0值相当于FALSE。任何其他非NULL值将相当于TRUE。 (如果我们的列允许NULL值,一个NULL也只是NULL(既不是TRUE或FALSE)。

有很多其他的方式在数据库中列来实现布尔值。

一些开发商比如'Y'/'N'或'T'/'F',有些开发人员主张存储二进制类型,例如BIT

但是为了最大限度地方便使用和移植,整数类型是 对于布尔值的使用使用整数值的这种约定与MySQL实现一致在评估(boolean)条件时,MySQL返回FALSE的整数值0,a对于TRUE,整数值为1。

再次,在评估存储在列中的值,在SQL方面,我们遵循的是MySQL使用相同的约定:

  • 0值计算结果为FALSE。
  • 1个评估为真
  • 任何非空非零值也被评估为TRUE
  • 一个NULL值仅仅是NULL(从未TRUE或FALSE)
+0

我同意,这可能是最好的方式去做这件事。谢谢 –

+0

在MySQL中,如果我们使用关键字'BOOLEAN'作为数据类型定义一列,MySQL使用数据类型'TINYINT(1)'。如果我们想要禁止NULL值,我们添加'NOT NULL'。在我们的商店中,我们总是添加UNSIGNED修饰符并添加以'boolean'开头的注释。而且,除了布尔值之外,我们不会使用'TINYINT(1)'数据类型。 (我们有一些其他的'TINYINT'列,但我们让MySQL分配默认长度修饰符。) – spencer7593

0

尝试使用此:

<input type="radio" name ="radio one " checked> 

检查是可选属性。