异步PHP请求(非AJAX)

异步PHP请求(非AJAX),php,asynchronous,Php,Asynchronous,我正在开发一个eshop应用程序。我正在使用webservice在Oracle数据库中创建订单,WebVC将给出响应(OrderNumber),我将通知客户他的订单(OrderNumber)已生成 我的问题 在后端系统中创建订单花费了太多时间,用户不断刷新页面,每次刷新时,用户都会返回订单创建页面,因此用户可以再次单击创建订单按钮 在这种情况下,将为同一订单行创建多个订单。我可以限制用户在每个会话中仅创建一个订单,以防我在WebVC响应中获得订单号,并且我可以在下一页中向客户提供订单号 但当我并

我正在开发一个eshop应用程序。我正在使用webservice在Oracle数据库中创建订单,WebVC将给出响应(OrderNumber),我将通知客户他的订单(OrderNumber)已生成 我的问题 在后端系统中创建订单花费了太多时间,用户不断刷新页面,每次刷新时,用户都会返回订单创建页面,因此用户可以再次单击创建订单按钮 在这种情况下,将为同一订单行创建多个订单。我可以限制用户在每个会话中仅创建一个订单,以防我在WebVC响应中获得订单号,并且我可以在下一页中向客户提供订单号 但当我并没有得到响应(订单号)并且用户正在刷新页面时,真正的问题就来了。请求已经发送到后端系统,它将创建订单,我的应用程序将不会得到响应

在PHP中是否有任何方法可以异步检查订单状态,如果第一个请求是由用户发起的,并且与后续页面导航无关 请帮帮我。。
提前感谢

您可以在数据库中为来自用户的提交信息(例如用户ip信息、提交状态)设置一个标志。加载页面时,您可以检查此标志,并根据其启用/禁用“创建订单”按钮

如果你需要更多的细节,请告诉我


pinaki

+1,可以在会话中设置一个参考变量,也可以不用查询就完成同样的事情。。但基本上是相同的方法。是的,你是对的。。但是我使用中间件应用程序中的Webservice创建订单,这个Webservice负责订单的创建。。所以我需要等待webservice的响应。。如果我没有收到响应并且用户刷新,则将创建页面订单,并且我的应用程序将不会获得订单号,因此它将提供再次创建订单的选项:(我希望像php这样的东西需要与webservice建立持久连接,直到它得到响应,页面刷新不应影响持久连接您不能停止页面刷新,因为用户可以关闭浏览器并重新启动。我建议您让用户刷新页面,但在两者之间添加一个检查层(使用数据库或会话标志)这会阻止刷新完全发出Web服务请求。因此,在第一个请求从给定IP完成之前,您不允许另一个Web服务创建订单。我想这应该可以解决您的问题。让我知道您的想法。Pinaki..谢谢您的回复…是的,这是一个好的选择..但它不能满足我的全部要求元素。我需要向用户显示已在后端系统中创建的订单号。订单号是可以获取订单详细信息的唯一ID。如果用户刷新页面,这将不起作用。iframe也将刷新