Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/58.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/haskell/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
设置apache RewriteMap以从数据库中提取的正确方法是什么?(PHP/APACHE/MYSQL)_Php_Mysql_Apache_.htaccess_Rewritemap - Fatal编程技术网

设置apache RewriteMap以从数据库中提取的正确方法是什么?(PHP/APACHE/MYSQL)

设置apache RewriteMap以从数据库中提取的正确方法是什么?(PHP/APACHE/MYSQL),php,mysql,apache,.htaccess,rewritemap,Php,Mysql,Apache,.htaccess,Rewritemap,我正在尝试在我的小web应用程序上设置干净的URL。现在,URL的外观如下所示: http://www.mysite.com/productinfo.php?product=19 我希望他们: http://www.mysite.com/productinfo.php?product=Shoes 我该如何编写RewriteMap和PHP脚本来在数据库中提取标题列,并将其插入URL以代替产品ID,并以愉快的方式转发访问者?在这种情况下,看起来不需要重新编写URL,因为您使用的是相同的$\u GET

我正在尝试在我的小web应用程序上设置干净的URL。现在,URL的外观如下所示:

http://www.mysite.com/productinfo.php?product=19

我希望他们:

http://www.mysite.com/productinfo.php?product=Shoes


我该如何编写RewriteMap和PHP脚本来在数据库中提取标题列,并将其插入URL以代替产品ID,并以愉快的方式转发访问者?

在这种情况下,看起来不需要重新编写URL,因为您使用的是相同的
$\u GET
变量


在解释
$\u GET['product']
时,只需在数据库中检查正确的标题,然后从中找到正确的产品id。我认为您不需要Apache来解决这个问题。

在这种情况下,看起来您不需要重写URL,因为您只需要使用相同的
$\u GET
变量


在解释
$\u GET['product']
时,只需在数据库中检查正确的标题,然后从中找到正确的产品id。我认为您不需要Apache来解决这个问题。

您可以使用这样一个简单的重写-

RewriteEngine On
RewriteRule ^product/info/.*$ productinfo.php [NC,L]
在htaccess文件中,使用vhost或其他配置,然后使用-

$var = $_SERVER['REQUEST_URI'];

检索原始请求。这只是一个非常简单的示例,但它应该会让您朝着正确的方向前进。

您可以使用这样一个简单的重写-

RewriteEngine On
RewriteRule ^product/info/.*$ productinfo.php [NC,L]
在htaccess文件中,使用vhost或其他配置,然后使用-

$var = $_SERVER['REQUEST_URI'];

检索原始请求。这只是一个非常简单的例子,但它应该让您朝着正确的方向前进。

也许您真正想要做的是类似于
http://www.mysite.com/product/info/9/shoes
?是的,实际上我会的。我想我是想尽量简化这个问题。也许你真正想做的事情更像是
http://www.mysite.com/product/info/9/shoes
?是的,实际上我会的。我想我是想尽量简化这个问题。@A斯塔布斯,你需要决定你想在这里做什么。如果你想要SEO风格的URI,那么你需要你的应用程序来解码
/product/Shoes
,HTTP服务器在这里帮不上忙。这就是为什么我做了a+1,但只是解释一下OP;-)@A斯塔布斯,你需要决定你在这里要做什么。如果你想要SEO风格的URI,那么你需要你的应用程序来解码
/product/Shoes
,HTTP服务器在这里帮不上忙。这就是为什么我做了a+1,但只是解释一下OP;-)