500 : 服务器错误DataTableSQL Error: 在将 varchar 值 'A03' 转换成数据类型 int 时失败。啥问题?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了500 : 服务器错误DataTableSQL Error: 在将 varchar 值 'A03' 转换成数据类型 int 时失败。啥问题?相关的知识,希望对你有一定的参考价值。
我申请职位,填写基本资料的页面打不开,每次都显示以上错误。是他们网站本身出了问题么?另外试了两台电脑,都是同样情况,该怎么办?
楼上说的这个不属于网站页面代码问题,是网站后台代码问题。应该是由数据库表里面字段类型为varchar的数据取出来转换成int是出现错误,这种情况一般都是字段类型为varchar的数据不是数字造成的追问呜...专业的我完全不懂!我的意思就是,既然出现了这个状况,是不是说明他们网站有问题,我这个职位就暂时别申请了?
参考技术A 他们网站的网页代码出问题了。 参考技术B 把数据库里面的存A03的字段改成varchar类型就可以了,PHP 错误抑制被忽略
【中文标题】PHP 错误抑制被忽略【英文标题】:PHP error suppression is being ignored 【发布时间】:2013-02-18 15:16:05 【问题描述】:我当前的 php.ini 文件设置为报告除弃用和严格标准之外的所有错误,如下所示:
error_reporting = E_ALL & ~E_STRICT & ~E_DEPRECATED
使用此设置的原因是我们迫切需要在托管我们网站的 linux 服务器上执行 PHP 升级;问题在于,不推荐使用的功能和严格的标准建议将很快填满 170 多个网站的错误日志文件。这些错误主要是由于一些小问题,例如函数没有被声明为静态等。最终我们将通过所有站点并修复这些问题,但同时我们需要抑制错误。
我在本地测试环境中遇到的问题(运行我们希望升级到的 PHP 版本 - 5.4.3)是错误仍然显示,之前打印了以下内容:
SCREAM: Error suppression ignored for
谁能告诉我为什么忽略错误抑制以及如何正确抑制错误?
提前致谢。
【问题讨论】:
也许是个愚蠢的问题,但是你重启了 Apache 吗? 这不是一个愚蠢的问题,令人惊讶的是它被忽视的频率。但是是的,我正在重新启动所有 WAMP 服务。 【参考方案1】:您似乎正在使用尖叫扩展程序。来自手册:
scream 扩展提供了禁用静音错误控制操作符的可能性,以便报告所有错误。此功能由 ini 设置控制。
Scream 是一个调试扩展,旨在显示尽可能多的错误消息。这是通过忽略@
运算符并始终具有最高可用的error_reporating 级别来完成的。 (无论您的 error_reporting
设置如何)。因此,您必须停用 php.ini 中的扩展:
scream.enabled = off
顺便说一句:我不会更新有 170 个网站的服务器出现代码错误。现在是一颗定时炸弹。最好将它们逐个站点迁移到新的 PHP 版本。在迁移过程中可能有两台服务器并行。
【讨论】:
在 php.ini 文件中添加scream.enabled = Off 并不能阻止错误抑制被忽略。目前添加该行没有任何作用。我知道这是一种非常混乱的做事方法,但它只是暂时的。到目前为止,我没有安装另一个 PHP 实例作为 CGI 的运气,所以我正在寻找其他选项。有什么想法吗? 我能够在我们的服务器上运行第二个 PHP 实例,感谢您的建议。 @WilliamStewart 抱歉,我没有认出你的第一条评论。在没有查看服务器的实际设置的情况下,我可以指出error_reporting
级别可以根据脚本进行设置。也许您的 170 个站点中的一个或多个这样做?但是,常规的 PHP 错误消息不应具有“Scream:”前缀。关于第二条评论:我认为这是个好主意!以上是关于500 : 服务器错误DataTableSQL Error: 在将 varchar 值 'A03' 转换成数据类型 int 时失败。啥问题?的主要内容,如果未能解决你的问题,请参考以下文章