2013-03-14 63 views
0

我目前正在處理一個正在添加到我們當前電子商務系統中的退貨系統設計 - 而且我被卡在訂單號變量所在的部分傳遞到謝謝頁面。在處理表單後將變量傳遞給URL

目前,客戶進入訂單頁面,點擊返回鏈接(將它們發送到表單),這是一個設置的URL,訂單號碼動態添加到網址。然後將此訂單號從表單發送至表單處理器,然後通過電子郵件向我們發送訂單詳細信息。

所有工作正常,直到重定向到謝謝頁面。

的形式,我有:

if(isset($_POST['submitted'])) 
{ 
    if($formproc->ProcessForm()) 
{ 
    $formproc->RedirectToURL(); 
} 
} 

和形式的處理器,我有:

function RedirectToURL() 
{ 
$orderurl = $_POST['orderno']; 

    $url = 'thank-you.php?returnreq=' . $orderurl; 
    header("Location: $url"); 
    exit; 
} 

然而,這返回的感謝you.php頁網址沒有訂單號,儘管訂單號碼被正確傳遞給處理器(因爲它發送的電子郵件中包含正確的訂單號)

感謝您的期待!

+0

嘗試在RedirectToUrl()方法中執行一個'var_dump($ _ POST)',並確保刪除'header'進行測試。 ordernr可能在某個地方沒有設置或者區分大小寫。 – 2013-03-14 11:12:54

+0

同時檢查瀏覽器中的調試控制檯以檢查您收到的標題。 – TFennis 2013-03-14 11:23:40

回答

0

嘗試發送訂單號作爲一個功能PARAM

function RedirectToURL($orderurl) 
{ 
$url = 'thank-you.php?returnreq=' . $orderurl; 
header("Location: $url"); 
exit; 
} 

變化也從FN呼叫,像

.... 
$formproc->RedirectToURL($_POST["orderno"]); 

.... 
+0

在原始問題和答案中,函數名稱並不能正確表示函數的功能。 – TFennis 2013-03-14 11:21:58

+0

不幸的是我仍然收到沒有附加orderurl/ordernumber的URL! – brii 2013-03-14 11:46:37

1

檢查$ _ POST [ 'orderno']是ProcessForm方法未設置

+0

我已經檢查過,沒有在表格 – brii 2013-03-14 11:40:21

+0

的處理中沒有設置變量也許重寫規則刪除了這個參數?或路由器模塊? – 2013-03-14 15:24:31