令人困惑的MySQL-PHP-insert在一台机器上100%工作,而在另一台机器上50%工作

令人困惑的MySQL-PHP-insert在一台机器上100%工作,而在另一台机器上50%工作,php,mysql,ubuntu,Php,Mysql,Ubuntu,我正在使用PHP解析一个XML文件并将其插入2个MySQL表中(这些表位于同一个MySQL数据库中)。令人困惑的问题是,我有一个相同的PHP脚本在虚拟机上工作,它工作得很好,它正确地将所有数据插入到两个表中。但是,在另一个虚拟机中(都有Ubuntu服务器16.04,在Apache中配置相同,PHP-我对配置运行了diff来验证),它只在第一个表中插入数据,而在第二个表中不插入数据。如果两个脚本的版本相同,并且操作系统和配置相同,这怎么可能呢 非常感谢您的时间。我发现了错误,在脚本运行的虚拟机上,

我正在使用PHP解析一个XML文件并将其插入2个MySQL表中(这些表位于同一个MySQL数据库中)。令人困惑的问题是,我有一个相同的PHP脚本在虚拟机上工作,它工作得很好,它正确地将所有数据插入到两个表中。但是,在另一个虚拟机中(都有Ubuntu服务器16.04,在Apache中配置相同,PHP-我对配置运行了diff来验证),它只在第一个表中插入数据,而在第二个表中不插入数据。如果两个脚本的版本相同,并且操作系统和配置相同,这怎么可能呢


非常感谢您的时间。

我发现了错误,在脚本运行的虚拟机上,我安装了PHP7.0,在脚本不运行的虚拟机上,我安装了PHP7.1,看起来7.1中的PDO要严格得多,我没有看到所有的错误,因为我缺少:
$db->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION)
查看PHP7.1中的所有异常。当我将这一行添加到脚本中时,我看到了以下错误:
PHP致命错误:未捕获PDOException:SQLSTATE[HY000]:一般错误:1366不正确的十进制值:''对于列
,从那里很容易修复它。我希望这对某人有所帮助

PHP和Mysql的版本是否相同?您是否使用任何PHP模块?请阅读错误日志并尝试重现问题。在你得到任何有形的东西之前,我们建议你最好牺牲一只鸡,在月光下裸体跳舞。血液中的污迹是以前提到的鸡。@Edwin你看,PHP和MySQL是不同的版本。我将更新其中一个虚拟机,使其在同一版本上同时具有这两个虚拟机。让我们希望这就是导致这一问题的原因,如果不是,我将遵循特雷斯科的建议。