加入收藏 | 设为首页 | 会员中心 | 我要投稿 云计算网_泰州站长网 (http://www.0523zz.com/)- 视觉智能、AI应用、CDN、行业物联网、智能数字人!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

将PHP false插入mysql

发布时间:2021-05-22 12:46:35 所属栏目:MySql教程 来源:网络整理
导读:我的MySQL表包含一个tinyint(1)值,用于存储true或false值. 我有以下PHP变量: $name = '';$description = '';$active = true; 现在我的SQL查询如下: $query = "INSERT into my_table (my_name,my_description,active) VALUES ('$name','$description',$ac

我的MySQL表包含一个tinyint(1)值,用于存储true或false值.

我有以下PHP变量:

$name = '';
$description = '';
$active = true;

现在我的SQL查询如下:

$query = "INSERT into my_table (my_name,my_description,active) VALUES ('$name','$description',$active) ";

这只有在$active的值为true时才有效.一旦活动变量为false,php将插入一个空字符串,而不是0,因此查询将失败.

在这样的查询中使用false的最佳方法是什么?

我应该手动将false转换为’0’字符串吗?
是否更好地立即在PHP方面使用stings?换言之,声明:$active =’1′;
或者我可以以某种方式让PHP总是将false转换为’0’字符串?

谢谢
迈克尔 最佳答案 首先,您应该使用mysql_real_escape_string或mysqli_real_escape_string或其他适合您的数据库连接的方法来转义您的值以避免sql注入然后针对您的特定问题,您可能会执行以下操作:

$query = "INSERT into my_table (my_name,".($active?1:0) .")";

或者将$active转换为int也应该做的工作:

$query = "INSERT into my_table (my_name,".((int) $active)).")";

(编辑:云计算网_泰州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读