Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: ЧПУ c помощью PHP и Mysql

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
gigs
Отправлено: 05 Января, 2013 - 20:22:35
Post Id


Гость


Покинул форум
Сообщений всего: 96
Дата рег-ции: Апр. 2012  
Откуда: Киев


Помог: 0 раз(а)




Помогите пожалуйста решить такую задачу, есть база данных, база имеет такие столбцы как: id, url_name, description. Где url_name находится ЧПУ страницы, а где description - описание к странице, таких записей в базе больше 100 штук, но я никак не могу понять как сделать так чтоб ЧПУ появлялся в адресной строке, когда пользователь нажмет на выбранную страницу, у меня сейчас выводит так: mysite.ru/view-russian-online.php?id=3, а мне нужно чтоб было так mysite.ru/view-russian-online/rentv-online.html, ну и так с другими страницами, короче чтоб вместо .php?id=3 стояло ЧПУ из базы. Помогите пожалуйста.

(Отредактировано автором: 05 Января, 2013 - 20:49:42)

 
 Top
esterio
Отправлено: 05 Января, 2013 - 20:27:39
Post Id



Активный участник


Покинул форум
Сообщений всего: 5025
Дата рег-ции: Нояб. 2012  
Откуда: Украина, Львов


Помог: 127 раз(а)




 
 Top
gigs
Отправлено: 05 Января, 2013 - 20:48:57
Post Id


Гость


Покинул форум
Сообщений всего: 96
Дата рег-ции: Апр. 2012  
Откуда: Киев


Помог: 0 раз(а)




я сделал так:
PHP:
скопировать код в буфер обмена
  1. $result = mysql_query ("SELECT id,url_name,description FROM kanalu",$db);
  2.  $myrow = mysql_fetch_array ($result);
  3.  
  4. <a href='/view-russian-online/%s'>
  5. $myrow["url_name"]
  6.  
  7.  


а в .htaccess прописал такое:
CODE (html):
скопировать код в буфер обмена
  1. RewriteEngine On
  2.  
  3. RewriteCond %{REQUEST_FILENAME} !-d
  4. RewriteCond %{REQUEST_FILENAME} !-f
  5.  
  6. RewriteRule ^view-russian-online/([-_A-z0-9]+)/?$ view-russian-online.php?url_name=$1 [L]


сама ссылка получилась такого вида mysite.ru/view-russian-online/re ntv-online но при переходе по ссылке мне выдает ошибку Error 404, в чем может быть проблема ?

(Отредактировано автором: 05 Января, 2013 - 20:51:25)

 
 Top
broshurkaplus
Отправлено: 06 Января, 2013 - 11:18:46
Post Id



Посетитель


Покинул форум
Сообщений всего: 354
Дата рег-ции: Янв. 2011  
Откуда: Пружаны Бресткая обл. Беларусь


Помог: 2 раз(а)




думаю так надо
CODE (htmlphp):
скопировать код в буфер обмена
  1. RewriteRule ^view-russian-online/([-_A-z0-9]+)/?$ ?url_name=$1 [L]


на странице вы же получаете гет параметр url_name, далее обрабатевайте его и отдавайте то что требуется.
но должен быть уникальным url_name а то две статьи с одинаковым именем и...
или добавьте /url_name/id типа /статья-про-поезд/25 или /статья-про-поезд-25 далее просто берите/ввырезайте ид и обрабатывайте, а url_name будет для чпу
ведь подумайте если реально статей 5к, то не факт не будет статей с одинаковым названием?

при добавлении статьи сразу генерьте ему чпу и в базу, используйте - в урле
еще A-z это как то не ясно...
_ это не надо, почитайте, лучше чтобы урл-урл-урл а не урл_урл , гугл так хотит и при копи/паст урла его реально видеть можно не будет сливаться _

(Отредактировано автором: 06 Января, 2013 - 11:23:31)

 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB