在php中设置允许变量的松散转换?

时间:2015-09-03 13:38:12

标签: php mysql linux centos server

我有一个应用程序和数据库,当前正在GoDaddy的一个服务器上运行,它运行良好。我最近决定创建自己的Centos盒来托管所述应用程序和数据库。在设置Linux机器时,我是一个相对的新手,但在网上找到了很多好文章。一切安装得很好,并且能够访问应用程序,它运行查询并相应地显示页面。

但是,我发现某些表中的插入不再有效。正确设置数据库及其表,并从访问角度相应地设置权限。当我尝试将新记录插入到表中,其中列需要一个整数而insert语句只传递一个空白变量时,会出现问题。相同的插件在GoDaddy服务器上运行正常但在我的服务器上运行不正常。是否有我需要安装或设置的php或mysql或php模块中的设置?

例如;表单将字符串变量付款类型传递为' 4'当我尝试将其插入数据库时​​,我得到不正确的整数值。这让我相信php不会对POST变量进行某种松散的翻译,或者mysql在某种严格的规则下运行。

任何想法都将不胜感激!

1 个答案:

答案 0 :(得分:1)

在进一步研究mysql的设置之后,我发现数据库的默认设置为/etc/my.cnf中的sql_mode设置了STRICT_TRANS_TABLES,并且通过删除该标记,一切都运行良好。