2013-07-30 67 views
0

我有使用產生的其它頁面只有一個index.php文件:更改標題動態創建的PHP頁面

RewriteRule ^page 1.php$ index.php?cat=a [NC] 
RewriteRule ^page 2.php$ index.php?cat=b [NC] 

我嘗試使用下面的代碼來改變我的網頁的標題,但它只爲index.php工作。

<?php 
$page = $_SERVER['PHP_SELF']; 
if(isset($page)) { 
switch($page) { 
case "/index.php": 
$title = "this is homepage"; 
break; 
case "/page 1.php": 
$title = "products"; 
break; 
case "/page 2.php": 
$title = "services"; 
break; 
} 
}else{ 
$title = "default title"; 
} 

print "<title>$title</title>"; 
?> 
+0

你之前回復過$頁嗎?也許這個空白被替換爲'%20'。 –

+0

PHP會看到重寫的URL,而不是原來的。你需要測試'$ _GET ['cat']'。 – Barmar

+0

@Barmar我測試過$ _Get ...不是這樣。 –

回答

1

驗證的空間我不知道他們允許的URL

,看一下文檔:

http://php.net/manual/en/reserved.variables.server.php

試試這個:

<?php 
$page = $_GET['cat']; 
if(isset($page)) { 
switch($page) { 
case "index": 
$title = "this is homepage"; 
break; 
case "a": 
$title = "products"; 
break; 
case "b": 
$title = "services"; 
break; 
} 
}else{ 
$title = "default title"; 
} 

print "<title>$title</title>"; 
?> 
+0

他們被允許,他們只需要用'%20'編碼。 – Barmar

+0

感謝精度 – Freelancer

+0

我的htaccess很好,我用「 - 」......這只是一個例子。改變標題的代碼不適用於頁面 –

0

使用在你重寫規則而不是空間:

RewriteRule ^page\s1.php$ index.php?cat=a [NC] 
RewriteRule ^page\s2.php$ index.php?cat=b [NC]