sql server - PHP页面中途停止加载,使用ODBC,数据源,MSSQL


sql server - PHP page stops loading halfway, using ODBC, datasource, MSSQL

我们有一个基本是静态的页面,其中包含一些PHP内容,每个内容都从我们的MSSQL数据库中提取数据。

有一个非常奇怪的问题,页面会随机停止渲染。这个问题是偶发的,并不总是可见的。有时页面加载正确,有时在到达文件末尾之前就停止了。

您可以看到问题所在的页面在戴夫:http://author.www.purdue.edu/discoverypark/climate/刺激:http://www.purdue.edu/discoverypark/climate/index.php

如果您反复刷新页面,您将有望看到问题。这个问题只存在于包含对数据库调用的页面上,但是大多数时候页面加载完全正常;只是有时它会停止输出页面。它已经打破了普通的html内部以及之前和php块。

这个问题在生产环境中似乎更糟;两者之间的唯一区别是数据源连接到DB。

在PHP、ODBC和MSSQL中有任何已知的问题吗?它显然与对数据库的调用有关,这些调用都是存储过程。会不会是数据源的问题?

我一直在"View Source"中看到这种情况:

& lt;div类="包装"比;& lt; a href = "/研究/冲程体积/"祝辞OVPR />

例如,DEV中的localhost和PROD中的单独盒子之间的DB连接差异可能会改变问题的时间/频率,但几乎可以肯定是转移注意力…

虽然如果DB调用查找OVPR映像正在做一个死亡()…

可以肯定的是,如果您没有在数据库代码中每次调用odbc_*或mssq_*时都有10行错误处理,那么您就做错了,需要添加它。

PS从ODBC切换到mssql_*或sybase_*驱动程序或PDO::*并消除至少一个可能的竞争者应该是很简单的,如果以上都不成功的话。不过,我要再说一遍,数据库99%肯定是转移注意力的东西,一旦你追踪到真正的原因,你所做的事情将是显而易见的,我敢说很愚蠢……

确保代码中没有die或exit

Edit——如果有,删除它,并查看错误

是否检查了正常的调试方法?代码是什么样的——具体来说,是围绕ODBC调用的错误处理?你没有一个顶级的返回值或者一个错位的骰子(),是吗?

当我看到页面处于不呈现状态时,似乎是因为页面显然是不完整的,而且它是XHTML。

我看到它通常死在这里-

<a href="/research/vpr/">OVPR</a>

尝试提高错误报告级别,以便您可以看到任何可能在服务器级别被抑制的警告,错误和信息。

http://php.net/manual/en/function.error-reporting.php

// Report all PHP errors
<?php error_reporting(-1); ?>