使用PHP中的干净URL重定向URL

时间:2020-04-01 09:37:12

标签: php .htaccess url url-shortener clean-urls

我正在构建一个简单的电子商务应用程序,我想使自己的网址“干净”。 好的,我已经做了一些事情到达那里,但是现在我很困惑:/

我目前的状况:
www.example.com/products
在此页面上,我显示了一些带有其ID,标题和所有其他内容的产品

当我单击产品标题时,我将提交带有ID和名称的表格,并想转到
www.example.com/detail/ 产品名称 <form name="prodDetail" action="detail" method="post">
在detail.php中,我通过$ _POST获得产品ID,因为它是通过提交表单来获得的。然后我可以根据需要做所有事情以显示产品详细信息。
到目前为止一切都很好。
但是如果我做了<form name="prodDetail" action="detail/'.$prodName.'"method="post">,除了空白页面,我什么也没有:/请注意,如果我将“ / ”替换为“ ”,则可以正常工作,但是我有一个丑陋的网址?在里面:/

所以我认为我的htaccess文件不允许我这样做:/

RewriteRule ^([^/]+)/([^/]+)/([^/]+)/?$ index.php?action=$1&1id=$2&2id=3$ [L,QSA]
RewriteRule ^([^/]+)/([^/]+)/?$          index.php?action=$1&2id=$2 [L,QSA]
RewriteRule ^([^/]+)/?$                  index.php?action=$1 [L,QSA]

我还在使用“ switcher.php”,该文件捕获了“操作”,并使用一个函数将我带到了正确的页面。我在index.php中将此脚本称为

$action = isset($_GET['action']) ? $_GET['action'] : "default";

switch ($action){
  case 'product';
    showproduct();
    break;
  default:
    defaultpage() //home.php is default
}

因此,如果我提交表单以“详细说明”,切换器会将我指向detail.php。

抱歉我的英语不好
希望有人能帮助我:)

0 个答案:

没有答案
相关问题