Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Преобразование url
 
 автор: Jovidon   (22.05.2013 в 14:19)   письмо автору
 
 

Здарвствуйте товариши!!!

Если вы заметили последные годы в большинсво сайтов в url страке выводять перемены вот так

site.ru/razdel/nazvatiya-razdela-v-mesto-tsifri
а не 
site.ru/?razdel_id=какойто цифр.


и вот решил зделать так.

//file func.php
<?php
    
function convert($url)
    {

        return 
str_replace(" ","-",$url);
    }

    function 
back($url)
    {
        return 
str_replace("-"," ",$url);
    }
    
    function 
clean($val)
    {
        if((int)
$val)         return intval($val);
        if((string)
$val)    return htmlspecialchars(stripcslashes($val), ENT_QUOTES);
    }
?>


// file index
<?php
    
include 'func.php';
    
// index
    
$sql "SELECT title
            FROM table"
;
    
$res mysql_query($sql);
    if(!
$res) exit();
    
    if(
mysql_num_rows($res) > 0)
    {
        while(
$row mysql_fetch_array($resMYSQL_ASSOC))
        {
            echo 
'<a href="?article='.convert($row["title"]).'">'.clean($row["title"]).'</a><br>';
        }
    }
?>


// file article
<?php
    
include 'func.php';
    
// article
    
if(!isset($_GET['article']))
    {
        
header("location: index.php");
        exit();
    }
    else
    {
        
$tit back($_GET['article']);
        
$sql "SELECT *
                FROM table
                WHERE title = '
$tit'";
        
$res mysql_query($sql);
        if(!
$res) exit();
        else
        {
            
// выводим информацию;
        
}
    }
?>


Если вам смешно не смейтес, я начинающий программист.
Что вы думаете на счоте такого? вредно ли это?
Как лучще преобразовать url?

  Ответить  
 
 автор: Rolex   (22.05.2013 в 21:27)   письмо автору
 
   для: Jovidon   (22.05.2013 в 14:19)
 

Здравствуйте. Такое преобразование получается засчет включения в работу mod_rewrite web-сервера. Если вы начинающий, то могу посоветовать прочитать следующие статьи:
1. http://liteproblog.ru/koding/podklyuchaem-mod_rewrite.html - это как подключить сам модуль.
2. http://warrex.net/scripts/article/4493-kak-sdelat-chpu-s-pomoschyu-htaccess.html - простой пример реализации.
3. http://wiki.webimho.ru/mod_rewrite - подробнее.

P.S.: обычно, преобразованные таким образом URL называют ЧПУ (человекопонятные урлы). Но правильно их стоит называть псевдостатические URL, т.к. даже если подключен mod_rewrite, то адреса http://mysite.ru/index.php?part=main и http://mysite.ru/main будут абсолютно идентичны.

  Ответить  
 
 автор: Jovidon   (23.05.2013 в 09:46)   письмо автору
 
   для: Rolex   (22.05.2013 в 21:27)
 

Спасибо!

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования