2017-03-03 314 views
0

我有幾個網站提供一個訂單系統。其中之一(可稱之爲PRODUCTS)我有下一個問題,因爲我不希望用戶看到他們在其他網站上付款(可以稱之爲BILLING),我在iframe頁面中調用它。在那裏我使用一些參數將計費鏈接與某些參數聯繫起來,以便賬單知道哪些網站和哪些產品。之後在iframe中用戶將選擇產品的一些規格,然後在下一頁中填寫個人數據。 所有的系統工作完美,我的問題開始幾個星期前,當我收到用戶的投訴,在Edge瀏覽器中,當他們打開從ifram看到的頁面的順序時,參數傳遞良好,但是當您點擊下一頁時,不將數據傳遞到BILLING上的下一頁,它只是重定向到主頁面。這隻發生在Edge(Microsoft Edge 38.14393.0.0)中。功能重定向到下一個頁面上BILLING這個樣子Microsoft Edge瀏覽器的安全性和位置

function redirect($url) { 
    if (!headers_sent()){ 
     header("Location:".$url, TRUE, 307); 

    }else { 
     echo '<script type="text/javascript">'; 
     echo 'window.location.href="'.$url.'";'; 
     echo '</script>'; 

    } 
} 

各種形式在結算訂單系統已提交這樣

<form action='/wizard-save-data.html' method='get' name='saveWizardData' class='fdCheckbox-checkDomain fdCheckbox-addDomain' id="autoSubmit"> 

<input type="button" onclick="location.href='wizard-save-data.html?page=2'" value="continue in the order" /> 

</form> 

我發現了一些論壇,可能未來的情況,因爲我我在iframe中的一些安全規則邊緣檢測我的重定向像一些傷害用戶的活動,因爲重定向到location,它在其他網站上,然後是產品的位置。有人可以分享我可以測試的相同經歷或一些東西嗎?該系統適用於所有其他流行的瀏覽器。打開任何想法

/* UPDATE */ 

我建立了一個小網站只是爲這個測試,即使我有秩序,在同一地點(位置),那麼我有同樣的問題計費。所以這不是邊緣安全,我完全失去了。

+0

太多可能的答案 - 你可以看看像SagePay Direct這樣的直接集成系統,您可以使用cURL與他們的API交談;但這意味着您需要在自己的網站上捕捉卡片的詳細信息,因此必須符合PCI標準。或者你可以看看Ingenico的FlexCheckout,它是用iframe集成構建的,作爲一個選項,所以*應該*工作。或者使用PayPal結賬處理所有東西,但至少它是一個知名品牌。 – CD001

+0

@ CD001我不想解決付款方式問題,因爲我已經在訂單完成後實施了他們,我的問題是通過所有需要的數據來訂購系統,我有幾種在線方式和銀行轉帳 – Alexei

+0

我不是確定你使用的支付網關是什麼,但是我已經集成的每一個支付網關都允許你指定一個最終的*返回URL *,在交易完成時被調用。支付網關會將數據重定向(或發佈)回最終的網址,以便您根據該回復完成訂單(例如,付款可能已被拒絕)。我對目前的流程並不十分清楚 - 但從您在此處展示的內容來看,它似乎並不像正確的方法。 – CD001

回答

0

的問題是,由於在邊瀏覽器的一些規則,你不能對location.href鏈接截斷所以現在解決,並使其爲各類瀏覽器的工作就變得

<form action='/wizard-save-data.html' method='get' name='saveWizardData' class='fdCheckbox-checkDomain fdCheckbox-addDomain' id="autoSubmit"> 

<input type="button" onclick="location.href='www.test.com/order/wizard-save-data.html?page=2'" value="continue in the order" /> 

</form>