2012-10-22 223 views
0

我正在嘗試開發一個商店cms的支付模塊。 付款基於銀行收購。

因此,首先爲每個訂單在銀行方面創建(帶捲曲)「票」。 Ater客戶端在銀行服務器上的付款頁面上以其票證ID被轉發。如果客戶付款並按下按鈕「回去存儲」,一切都很好。
但是,如果客戶支付並不按下這個按鈕,我需要檢查結果(如果他支付或不支付)。它也是由捲曲製成的。我通過ticket id請求info,並接收一個數組,其中包含我需要檢查的結果代碼。

所以我需要自動檢查它(例如1小時內每5分鐘一次)。 克朗不能幫助我因爲它是所有動態過程。

我創建了一個返回結果的函數。但是,我怎麼能在任何時間間隔後臺啓動它?

在nginx的後臺運行php腳本

+0

是否有可能爲銀行給你付款通知? PayPal就是這麼做的,所以你不必連續輪詢它們。 –

+0

@Jack是的,這是最好的方法。但目前銀行只能以這種方式工作。 – Sergey

回答

2

使用cron。 PHP不提供任何類似調度器的東西,因爲它超出了語言的範圍。您可以使用DB來存儲整個過程所需的一些參數。

0

我會擴展一點點WebnetMobile答案使用cron爲你想要的。

可能你在你的數據庫裏有一個表格,你存儲的是你從銀行得到的門票,以及他們在何時取得或沒有取得門票創建日期。

然後,如果你想要的是檢查從銀行票據建立日期,每五分鐘whetever它suceed與否,如果不清楚,你應該運行一個cron 每分鐘將做到以下幾點:

  1. 檢查是否有沒有定義狀態的銀行票證(Suceed或Failed)。
  2. 檢查是否創建時間(沒有秒)減去當前時間(沒有秒)MOD 5 == 0.
  3. 如果爲true,表示另一個5分鐘時間已經從該票創建過去,應該檢查,否則什麼也不做。

我認爲這會做你想要什麼