Умные URL с использованием табличной переменной SQL - PullRequest
0 голосов
/ 05 февраля 2011

Я хотел бы знать, возможно ли создавать умные URL-адреса с помощью переопределения модов Apace на веб-сайте PHP, передавая значение переменной SQL.

Спасибо!

Ответы [ 2 ]

1 голос
/ 05 февраля 2011

Конечно, вы можете сделать это!Вам нужно будет получить таблицу с «слизнями», которые связаны с «уродливыми» URL.Вероятно, подойдет таблица со столбцами "slug" (index) и "ugly_url".

mod_rewrite:

RewriteEngine on
RewriteRule ^/[a-zA-Z0-9-_]+$ redirect.php?slug=$1

redirect.php:

// You'll need to find out to wich ugly URL this Slug belongs to.
// Connect to your database ...
$slug = mysql_real_escape ( (string)$_GET['slug'] );
if ( empty ( $slug ) )
    die ( 'Page not found.' );

$query = mysql_query ( "SELECT `ugly_url` FROM `slugs` WHERE `slug` = $slug LIMIT 1" );
if ( !$query )
    die ( 'Page not found.' );

$fetch = mysql_fetch_array ( $query );

$ugly_url = $fetch['ugly_url'];
header ( "Location: $ugly_url" );
1 голос
/ 05 февраля 2011

Это пример, который будет применяться к
/Customer/Detail/1234
и отображать его на
/Customer/Detail.php?ID=1234

RewriteEngine on
RewriteRule ^/Customer/Detail/([0-9]+)$  /Customer/Detail.php?ID=$1 

Возможно, вы захотите рассмотреть хорошую инфраструктуру MVC для другихпричины в дополнение к автоматизации этого.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...