ФорумПрограммированиеPHP для идиотов → Обьясните про ЧПУ

Обьясните про ЧПУ

  • Professor

    Сообщения: 2089 Репутация: N Группа: Адекваты

    Spritz 26 августа 2008 г. 1:18

    Добрый день.
    Вот пытаюсь осмыслить и понять ЧПУ.
    Обьясню как я понял их,а вы меня поправьте если что.
    Ставим на страницах ссылки вида "http://pyha.ru/forum/post/topic/1.0",
    а на этой странице разбираем пришедший юрл
    типа topic="topic" id="1.0" и так далее.
    если так,то все хорошо,но а если у меня форма,и она передает значение методом GET?
    Как их переделать в такой вид "post/topic/"??
  • AlexB

    Сообщения: 4306 Репутация: N Группа: в ухо

    Spritz 26 августа 2008 г. 1:26, спустя 7 минут 57 секунд


    если так,то все хорошо,но а если у меня форма,и она передает значение методом GET?
    Как их переделать в такой вид "post/topic/"??
    Поменять тип кнопки формы с sumbit на button, далее JavaScript-oм собирать значения полей в строку и делать document.location = "собранная строка". Только все это изврат и нафек не надо …
  • md5

    Сообщения: 11960 Репутация: N Группа: в ухо

    Spritz 26 августа 2008 г. 1:31, спустя 5 минут 10 секунд

    а что с формой? что он должна передавать?
    все умрут, а я изумруд
  • md5

    Сообщения: 11960 Репутация: N Группа: в ухо

    Spritz 26 августа 2008 г. 1:32, спустя 1 минуту 31 секунду



    если так,то все хорошо,но а если у меня форма,и она передает значение методом GET?
    Как их переделать в такой вид "post/topic/"??
    Поменять тип кнопки формы с sumbit на button, далее JavaScript-oм собирать значения полей в строку и делать document.location = "собранная строка". Только все это изврат и нафек не надо …
    я того же мнения
    я обычно обрабатываю пришедшие с формы данные, которые динамикой сделаны, т.е., например, поиск
    <form action="/search/" method="get"><input type="text" name="query" /></form>


    в итоге получаем урл вида site.ru/search/?query=поисковой+запрос
    все умрут, а я изумруд
  • sap

    Сообщения: 2701 Репутация: N Группа: Кто попало

    Spritz 26 августа 2008 г. 1:51, спустя 18 минут 41 секунду

    Поменять тип кнопки формы с sumbit на button, далее JavaScript-oм собирать значения полей в строку и делать document.location = "собранная строка". Только все это изврат и нафек не надо …

    Или, если, например, одно поле, то по онКейПрессу менять актион =) Но да, согласен, изврат =)

    урл вида site.ru/search/?query=поисковой+запрос

    Рулит.
  • Professor

    Сообщения: 2089 Репутация: N Группа: Адекваты

    Spritz 26 августа 2008 г. 2:05, спустя 13 минут 35 секунд

    Спасибо,так и сделаю.
    А еще вопрос.Для поисковиков,есть разница между
    /Menu/news
    и
    /Меню/новости
    Что лучше сделать?
  • md5

    Сообщения: 11960 Репутация: N Группа: в ухо

    Spritz 26 августа 2008 г. 2:17, спустя 12 минут 40 секунд

    делай news

    я вот тоже забил на русские логины…
    все умрут, а я изумруд
  • Professor

    Сообщения: 2089 Репутация: N Группа: Адекваты

    Spritz 26 августа 2008 г. 2:31, спустя 13 минут 34 секунды

    в .htaccess я написал так
    RewriteEngine On
    Options +FollowSymlinks
    RewriteBase /
    RewriteRule ^.*$ demo/index.php [L]

    Выдает ошибку 500
    чего не правильно?
    Предполагаю что должен любые url переименовывать в demo/index.php
  • Professor

    Сообщения: 2089 Репутация: N Группа: Адекваты

    Spritz 26 августа 2008 г. 2:48, спустя 17 минут 14 секунд

    Терь ошибку 302 выдает=(
  • sap

    Сообщения: 2701 Репутация: N Группа: Кто попало

    Spritz 26 августа 2008 г. 2:49, спустя 35 секунд

    Это все, что в хтаццессе? demo/index.php существует?
    Options +FollowSymlinks — попробуй это убрать.

    Вообще это к саппорту хостинга.
  • Professor

    Сообщения: 2089 Репутация: N Группа: Адекваты

    Spritz 26 августа 2008 г. 3:09, спустя 20 минут 47 секунд

    Чето я терь совсем ничего не понимаю!!=(

    RewriteEngine On
    RewriteBase /demo/
    RewriteRule ^Menu/news/([0-9]+)$ index.php?peremen=menu_content&peremen_id=$1 [R]

    Так он у меня в место нужного Menu/news/10 отражает index.php?peremen=menu_content&peremen_id=10
    А должен отражать Menu/news/10,а скрипту давать index.php?peremen=menu_content&peremen_id=10
    Или я опять чего то не понял?
  • sap

    Сообщения: 2701 Репутация: N Группа: Кто попало

    Spritz 26 августа 2008 г. 3:17, спустя 7 минут 25 секунд

    Ну естественно, у тебя флаг редиректа стоит. Поменяй [R] на [L].
  • Professor

    Сообщения: 2089 Репутация: N Группа: Адекваты

    Spritz 26 августа 2008 г. 3:21, спустя 4 минуты 8 секунд


    Ну естественно, у тебя флаг редиректа стоит. Поменяй [R] на [L].

    o_O. Отлично!Спасибо всем большое!
  • Professor

    Сообщения: 2089 Репутация: N Группа: Адекваты

    Spritz 26 августа 2008 г. 3:43, спустя 21 минуту 48 секунд

    И надеюсь последний вопрос.
    Получилось заменять url, но теперь не зегружаются ни картинки,ни стили,ни скрипты.
    Какой теперь к ним путь указывать надо?
    пробовал
    ../script.js
  • sap

    Сообщения: 2701 Репутация: N Группа: Кто попало

    Spritz 26 августа 2008 г. 3:49, спустя 6 минут 13 секунд

    Абсолютный.
    <a href="/something"><img src="/images/img.png" /></a>

Пожалуйста, авторизуйтесь, чтобы написать комментарий!