页面能用其他缓存什么的就都没问题,缓存就是在第一次调用时存储结果,在以后的查询中不再查询数据库而直接调用结果。随便你怎么做。问题出在哪里就解决哪里的问题还是,像这种问题后果很严重的,那个存储过程可以考虑改,甚至改表结构等。
如果缓存能满足你的需要的话,暂时如此也行,只要取消超时限制就行,程序开头set_time_limit(0);

解决方案 »

  1.   

    如果实在慢,只能等待正如你所说,可以通过异步查询的方式通过XmlHTTP组件读取返回结果开始读取后你的页面可以调出一个等待的动画什么的
      

  2.   

    你本来页面就要执行2分钟,php总不能提前得到你的结果显示出来吧。你可以在查询数据库前echo "loading....";然后flush()将之显示出来,等得就不是全白了。
      

  3.   

    The problem is the sp.
      

  4.   

    谢谢大家,我正用yh801216、Gdj所说的试试看
    我也想用cpio所说的异步做,有没有例子参考参考呀。期待更好的解决方案
      

  5.   

    Gdj:你本来页面就要执行2分钟,php总不能提前得到你的结果显示出来吧。你可以在查询数据库前echo "loading....";然后flush()将之显示出来,等得就不是全白了。查询完数据库后怎样清除页面上已输出的“loading...”?
      

  6.   

    一段查询居然要用 2分钟???
    我想你首先要解决的是 数据库本身的问题,而不是PHP超时2分钟才能返回结果,你有耐心等,用户可没这个耐心.呵呵
      

  7.   

    恩,呵呵,经过优化后只要不使用无法使用索引的查询,就算有个几亿数据也用不上1分钟。呵呵。你的sql速度确实存在问题,或者在使用上不太合理。
      

  8.   

    查询完数据库后怎样清除页面上已输出的“loading...”?------------------------
    用js控制