2012-07-29 33 views
1

我的.htaccess文件正常工作与以下网址PHP友好的URL的.htaccess - 搜索页面

http://www.mywebsite.com/product/category/Girls-Clothes 

.htaccess文件:

RewriteEngine On 

RewriteRule ^product/category/([a-zA-Z0-9-/]+)$ /product/category/category.php?cid=$1 
RewriteRule ^product/category/([a-zA-Z0-9-/]+)/$ /product/category/category.php?cid=$1 

但是当我使用页码沿这将无法正常工作

http://www.mywebsite.com/product/category/Girls-Clothes?pno=2 

我有两个变量cidpno,CID是在.htaccess中提到的,但是当我尝试“pno”时,它给了我sql错误。

RewriteRule ^uk/category/([a-zA-Z0-9-/]+)$ /uk/category/category.php?cid=$1?pno=$1 
RewriteRule ^uk/category/([a-zA-Z0-9-/]+)/$ /uk/category/category.php?cid=$1?pno=$1 

请让我知道我做错了

+1

您应该在查询字符串参数之间使用&符('&')。喜欢:'/uk/category/category.php?cid = $ 1&pno = $ 1' – arcyqwerty 2012-07-29 00:56:46

回答

2

以您目前的尝试,要更换cid,“女孩衣服”的pno具有相同价值的价值,我怀疑ISN你想要什么。

只需使用QSA标志将现有查询字符串附加到请求上,以便pno=与您添加的参数cid一起通过重写。

RewriteRule ^uk/category/([a-zA-Z0-9-]+)/?$ /uk/category/category.php?cid=$1 [L,QSA] 

通知我还通过附加/?[]除去/使尾随斜线可选它减少到一行。

+0

是我的锚链接是corrent ...(http://www.mywebsite.com/product/category/Girls-Clothes&pno=1) ...但它给了我错误的对象没有找到.. – 2012-07-29 01:00:56

+0

@ReelMark查询字符串应该以'?pno ='not'&pno ='开头。你的方式,'&'会导致它不符合你的重写规则模式,你会得到一个404. – 2012-07-29 01:01:50

+0

真棒....耶...迈克尔你是明星... – 2012-07-29 01:04:33