2011-10-21 28 views
1

我有一個這樣的.htaccess規則爲我的租賃形式

RewriteRule ^(lease)$ index.php?route=$1 [L] 

對此我這個PHP中使用到文件正確的文件

$industries = array(); 
while($row_r = mysql_fetch_assoc($result)){ 
    $industries[] = $row_r; 
} 
if(isset($_REQUEST['route'])){ 
    $route = rtrim($_REQUEST['route'], '/'); 
    $home_page = ($route == '') ? true : false; 
    $parts = explode('/', $route); 
}else{ 
    $home_page = true; 
} 
if(!$home_page){ 
    include($_SERVER['DOCUMENT_ROOT'] . '/inc/routes.php'); 
} 

routes.php文件文件

$valid_pages = array('newsletter_subscribe', 'lease',.... 

$file = $parts[count($parts) - 1]; 
if (in_array($file, $valid_pages)) { 
include($_SERVER['DOCUMENT_ROOT'] . "/pages/$file.php"); 
exit; 
}else{ 
include($_SERVER['DOCUMENT_ROOT'] . "/pages/404.php"); 
exit; 

這很好,我得到一個頁面/ lease.php文件。所有這些都是好的,但是,lease.php文件我有一個形式發送到自身這樣

<?php if((isset($_POST['submitform'])) && ($_POST['submitform'])) { 
    echo "<pre>".print_r($_POST)."</pre>"; 
} 

<form action="/pages/lease.php" method="post" id="app_form" name="app_form" onsubmit="return checkForm();"> 
<input type="text" name="print_config" value="email"> 
<p><input type="submit" name="submitform" value="Submit Application"></p> 
.... 

但POST始終是空的......這是爲什麼?我如何保存it..am我失蹤一些

+2

只要您的重寫規則沒有實際重定向頁面(但只是在內部重寫路徑),您的POST數據將被保留,因爲它仍然使用相同的HTTP請求。另外'頁面/ lease.php'不符合規則'^(租賃)$'的規則......反正...... – animuson

+0

聽起來合乎邏輯,但是這個帖子每次都是空的....不知道它是否丟失了某些 – Trace

+0

訣竅....如果您發佈答案,我會接受 – Trace

回答

1

嗯,OK:

只要你重寫規則實際上並不重定向頁面(只是重寫路徑內),因爲它仍然使用相同的HTTP請求的POST數據將被保留。 pages/lease.php與規則不匹配​​反正...

雖然我不知道哪個部分回答了您的問題。我假設這是表單的行爲。

+0

回答我的問題的部分是將表格更改爲\t

Trace