PHP ajax 异步执行不等待执行结果的处理方法

   这篇文章主要介绍了PHP ajax 异步执行不等待执行结果的处理方法,本文直接给出实现代码,需要的朋友可以参考下

  短地址生成应用中,要根据长地址生成网页快照,这个生成时间非瞬发,不可预估。

  所以前台方面采用的方案一般为先展示生成的短地址,再定期AJAX轮查网页快照是否生成完毕。

  So,PHP代码这里做了如下处理:

  代码如下:

  // 这边服务器采用的是phantomjs 来生成网页快照

  $cd = '/home/emp/phpinstall/phantomjs-1.5.0/bin/phantomjs /home/emp/phpinstall/phantomjs/snap.js "'.$url.'" /home/emp/public_html_demo/cms/'.$thumb.' & ';

  try{

  @pclose(popen($cd,"r"));

  }catch(Exception $e){}

  前台Js的ajax脚本:

   代码如下:

  _wt = window.setInterval("sys.ajax('?m=shorturl&c=index&a=check_snap','',callback.checkSnap);",200);

  回调函数checkSnap等待PHP的check_snap检测网页快照 文件是否生成完毕。

  收到生成完毕的信息后,清楚_wt这个定时器。

  代码如下:

  clearTimeout(_wt);

  这样,PHP和前台AJAX这对JFYF就合作得很欢快了~

时间: 2024-12-31 12:35:13

PHP ajax 异步执行不等待执行结果的处理方法的相关文章

PHP ajax 异步执行不等待执行结果的处理方法_php技巧

短地址生成应用中,要根据长地址生成网页快照,这个生成时间非瞬发,不可预估. 所以前台方面采用的方案一般为先展示生成的短地址,再定期AJAX轮查网页快照是否生成完毕. So,PHP代码这里做了如下处理: 复制代码 代码如下: // 这边服务器采用的是phantomjs 来生成网页快照 $cd        = '/home/emp/phpinstall/phantomjs-1.5.0/bin/phantomjs /home/emp/phpinstall/phantomjs/snap.js "'.$

Ajax异步提交表单数据的说明及方法实例_javascript技巧

场景描述:对于一个登录页面中有一个登录的表单,但是由于登录验证逻辑比较复杂,我们希望点击登录后不刷新当前页面,给出登录结果后再选择是跳到新的页面还是提示用户名密码错误.类似这样的问题很多很多.异步获取数据使用户体验大大增强.背景知识:Ajax指的是异步JavaScript及XML(Asynchronous JavaScript And XML).AJAX 不是一种新的编程语言,而是一种用于创建更好更快以及交互性更强的 Web 应用程序的技术.通过AJAX,您的JavaScript 可使用Java

ajax的异步请求-action响应ajax请求返回json类型执行不了success

问题描述 action响应ajax请求返回json类型执行不了success 我的action能响应ajax请求,但是不知道是返回的不是json还是其他的问题,就是执行不了success,代码如下: jsp代码: <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ taglib prefix=&quo

jQuery Ajax 异步加载显示等待效果代码分享_jquery

AJAX 全称 Asynchronous JavaScript and XML(异步的 JavaScript 和 XML).它并非一种新的技术,而是以下几种原有技术的结合体. 1) 使用CSS和XHTML来表示. 2) 使用DOM模型来交互和动态显示. 3) 使用XMLHttpRequest来和服务器进行异步通信. 4) 使用javascript来绑定和调用. 通过AJAX异步技术,可以在客户端脚本与web服务器交互数据的过程中使用XMLHttpRequest对象来完成HTTP请求(Reques

process-为什么在每分钟执行一次的任务计划中不能强制终止,要等待执行结束

问题描述 为什么在每分钟执行一次的任务计划中不能强制终止,要等待执行结束 代码如下: using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading; using System.Diagnostics; //using System.Management; //using System.Management.Instrumentation; n

ajax不执行success,执行error,能正常操作数据库

问题描述 ajax不执行success,执行error,能正常操作数据库 能正常发送请求,不能接收json数据 dataType:"json", success:function(result){ alert("aa"); if(result.status=="0"){ alert(result.msg); } }, error:function(){ alert("登记合同失败"); } 解决方案 最大的可能是,返回的不是j

fabric paramiko-python如何远程执行程序,不等待执行结果?

问题描述 python如何远程执行程序,不等待执行结果? 急急急!碰到非常棘手的问题,在线等! 要求是将编译好的应用程序通过fabric或paramiko批量部署在机器上并且执行. 现在出现的问题是,若使用fabric的run执行程序,会一直等待结束完才会继续下一行代码 paramiko也是一样的问题. 所以,有没有什么方法,在启动远程机器上的程序后直接开始部署下一台机器,而不去 等待部署的程序执行.部署完成后退出,其他机器上的程序继续执行? 解决方案 谢谢提供的建议! 我自己已经解决了,就是写

jQuery Ajax Post 回调函数不执行问题的解决方法_jquery

今天在写一个检查用户名的功能时,使用的是jQuery.post( url, [data], [callback], [type] )这个函数,但是发现其中的回调函数不能执行. 先来看看我的代码: 前台代码: <script type="text/javascript"> function checkUser() { var user = $('#<%=txtUser.ClientID %>').val(); $.post('checkUser.ashx', {

ajax 异步数据操作详解(1/3)

ajax 异步数据操作详解 AJAX全称为"Asynchronous JavaScript and XML"(异步JavaScript和XML),是指一种创建交互式网页应用的网页开发技术. 主要包含了以下几种技术: Ajax(Asynchronous JavaScript + XML)的定义 基于web标准(standards-based presentation)XHTML+CSS的表示: 使用 DOM(Document Object Model)进行动态显示及交互: 使用 XML