通过slug url而不是id从mysql db获取数据

时间:2015-11-26 19:21:53

标签: php mysql slug

我遇到了通过slug url从mysql db获取数据的问题。当我从id获取数据时它工作正常。我也取代了urlslug,但没有用。

我试图更改我的网站文章网址

mysite.com/public.php?id=12    to    mysite.com/public/google-search

我的表:

+----+---------------+---------+------------------------------------+
| id | title         | article |   urlslug  VARCHAR 500 NULL        |
+----+---------------+---------+------------------------------------+
| 12 | google search | xxxxxxx |   google-search                    |
| 13 | bing yahoo    | xxxxxxx |   bing-yahoo                       |
| 14 | friendly seo  | xxxxxxx |   friendly-seo                     |
+-------------------------------------------------------------------+

通过id获取数据的代码:

$id = $_GET['id'];
$id = mysqli_real_escape_string($conn,$id);
$query = "SELECT * FROM `table` WHERE `id`='" . $id . "'";
$result = mysqli_query($conn,$query);

while($row = mysqli_fetch_array($result)) {
echo ($row['title']);
echo ($row['article']);    }

请帮忙。感谢。

2 个答案:

答案 0 :(得分:0)

好的,你走了

当用户来到这里时......

mysite.com/public/google-search

此重写代码会将服务器端更改为此

mysite.com/public.php?id=12

将此添加到.htaccess文件

RewriteRule ^public/google-search mysite.com/public.php?id=12 [NC]

您需要对要屏蔽的所有文件执行此操作。

答案 1 :(得分:0)