如何创建动态URL?

Lig*_*ist 1 html css php url

我有一个社交网络,允许用户写博客和提问.我想创建动态URL,通过PHP在URL的末尾发布博客或问题的标题.

例:

www.blah.com/the_title_here
Run Code Online (Sandbox Code Playgroud)

寻找最干净,最有效的方法来实现这一目标.

Mar*_*ean 6

您通常会将URL友好的"slug"存储在数据库行中,然后使用PHP脚本查找与该slug匹配的帖子.

例如,如果你有一个调用的脚本index.php采用了一个名为slug... 的参数

<?php
if (isset($_GET['slug'])) {
    $sql = "SELECT * FROM `your_table` WHERE slug = ? LIMIT 1";
    $smt = $pdo->prepare($sql);
    $smt->execute(array($_GET['slug']));
    $row = $smt->fetchObject();
    // do something with the matching record here...
}
else {
    // display home page
}
Run Code Online (Sandbox Code Playgroud)

...然后你可以使用.htaccess重写请求:

RewriteEngine on
RewriteRule ^(.+)$ index.php?slug=$1
Run Code Online (Sandbox Code Playgroud)