在提交按钮单击后在后台运行PHP脚本而不重新加载页面

时间:2012-04-17 06:04:55

标签: php

我需要在提交按钮单击时运行php脚本(站点爬虫)而不重新加载页面。运行后台脚本后,将显示一个确认/警告弹出窗口,表明站点爬网程序已结束。请问任何想法?

2 个答案:

答案 0 :(得分:1)

基本上这个想法是这样的:

  • 您发送并XHR致电服务器并执行脚本
  • 脚本检查是否已有后台进程
    • 如果有,请返回状态代码
    • 如果在后台脚本上运行:脚本forks itself,则返回“确定”响应并开始执行工作
  • 使用不同的XHR调用,您反复检查脚本是否已完成
  • 当服务器端脚本运行完毕后,您将收集结果并在页面中显示

为简化与服务器的交互,您可能希望使用某些XHR libraries。我会避免建议避免使用jquery,除非你实际上已经将它用于其他东西。

至于“如何知道后台脚本何时完成”:我认为最好的方法是为该脚本创建一个包含

的文件
  • 跑步时:-1
  • 完成时:0
  • 当错误:正数

答案 1 :(得分:0)

Jquery + AJAX可以让您的工作更轻松。阅读本教程,了解如何实现结果:

AJAX+ jQuery Tutorial