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

时间:2011-04-06 14:19:26

标签: php sql-server odbc loading

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

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

您可以在其中查看问题的页面 开发:http://author.www.purdue.edu/discoverypark/climate/ 产品:http://www.purdue.edu/discoverypark/climate/index.php

如果您反复刷新页面,则希望能够看到问题。该问题仅存在于包含对我们的数据库的调用的页面上,但是在大多数情况下页面再次正常加载;有时只会停止输出页面。它破坏了普通的html以及php块之前和之内。

生产环境中的问题似乎差不多;两者之间的唯一区别是与数据库的数据源连接。

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

任何意见都会受到赞赏。

4 个答案:

答案 0 :(得分:1)

我一直在“查看源代码”中看到它,当它死亡时:

< div class =“wrap”>     < a href =“/ research / vpr /”> OVPR< / a>     < img alt =“>” SRC =”

我猜你的图片缓存或图片网址生成或图片处理可能会在某个地方被破坏,而且由于缺少图像而中止了。

> INSIDE alt值也不是犹太洁食。需要使用http://php.net/htmlentities

进行转义

它可能“有效”但它不会验证,并且一个不验证的页面只是简单的破坏。

例如,DEV中的localhost和PROD中的单独框之间的数据库连接差异可能会改变问题的时间/频率,但几乎可以肯定是红鲱鱼......

虽然如果DB调用查找OVPR图像正在执行die()...

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

PS 如果上述方法都没有解决,从ODBC切换到mssql_ *或sybase_ *驱动程序或PDO :: *并消除至少一个可能的竞争者应该是微不足道的。不过,我再次说,数据库肯定是99%的红鲱鱼,而且你已经做了一些显而易见的事情,我敢说愚蠢,一旦你追溯到真正的原因......

答案 1 :(得分:0)

确保代码中没有骰子或退出

编辑 - 如果有,请将其删除,然后查看错误

答案 2 :(得分:0)

你检查过正常的调试方法吗?代码是什么样的 - 特别是围绕ODBC调用的错误处理?你没有顶级回报或错位(),是吗?

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

我看到它通常死在这里 -

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

答案 3 :(得分:0)

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

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

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