mysql — создает представление из заголовка блога slug в простом переполнении стека

Я видел много материала о том, как создать уникальный заголовок слага и затем сохранить его в базе данных.

Я хочу сделать блог с URL, как blog/my-first-post а затем получить содержимое из базы данных и сделать вид.
Допустим, у меня будет очень простая таблица со столбцами (id, title, body, slug) и у меня уже есть слизняк в базе данных для каждого поста.

Как я могу сделать простой маршрутизатор в PHP, который получает URL blog/my-first-post получить слаг и найти его в базе данных, а затем получить содержимое этого поста из БД, чтобы я назначил содержимое блога в массив, а затем сделать представление для этого URL?

Все это без использования PHP-фреймворка, если это возможно.

1

Решение

Вы можете перенаправить все на страницу index.php с помощью htaccess:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^(.*)$ index.php?url=$1 [QSA,L]
</IfModule>

Используя этот файл htaccess, URL будут выглядеть так www.website.com/blog/slug-name

slug-name часть URL может быть доступна с $_GET['url']

Затем просто получите соответствующие данные из вашей базы данных, которые соответствуют слагу:

SELECT title, body FROM blogs WHERE slug = $_GET['url']

Очевидно, что не используйте этот SQL, это всего лишь пример. Убедитесь, что вы используете готовые заявления

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]