- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
В 2023 году Одноклассники пресекли более 9 млн подозрительных входов в учетные записи
И выявили более 7 млн подозрительных пользователей
Оксана Мамчуева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Здравствуйте, Недавно начал изучать php, пишу простой сайт. Возник вопрос:
Как убрать параметры GET из ссылки?
Сейчас выглядит ссылка так: /blog/article.php?id=12&url=url-stati
Хочу что бы было так: /blog/url-stati.html
Знаю что это как то делается через .htaccess но совсем не разбираюсь в регулярных выражениях...
/blog/url-stati.html
ну во первых вы потеряли ID записи
если нучен ЧПУ, то в вашем варианте
/blog/12/url-stati.html
и в htaccess
RewriteRule ^services/(.*)/(.*)$ article.php?id=$1&url=$2 [L]
а если вам нужно чтобы ID вообще не было то надо обаспечить уникальность url-stati.html в базе
ваще вариантов масса - вопрос ваш не корректен
Хочу что бы было так: /blog/url-stati.html
Для этого надо исключить id=12 из строки с GET запросом. Если исключение не возможно, то переменная 12 должна быть и в ЧПУ.
Сейчас выглядит ссылка так: /blog/article.php?id=12&url=url-stati
Тут явно избыточная инфа, не? По слагу получайте id-шник, если он вообще нужен. Вот почитайте: Как сделать единую точку входа с ЧПУ?
---------- Добавлено 28.08.2016 в 19:06 ----------
и в htaccess
RewriteRule ^services/(.*)/(.*)$ article.php?id=$1&url=$2 [L]
Тут явно избыточная инфа, не?
Если url-stati уникальное поле в таблице базе данных - id не нужен. Но MySQL искать по текстовому полю будет чуть дольше(когда записей станет миллион). Можно создать индекс для этого поля.
А поле id автоинкремент можно оставить для внутренних нужд - администрировать таблицу удобнее с id.
Да, я тоже предпочитаю роутинг url делать через index.php, оно понятнее и гибче, чем mod_rewrite.
Я в курсе, зачем иногда добавляют числовой id к слагу в адресе. Однако уверен, что блогу ТС-а до масштабов уровня Авито и иже с ними еще оч. далеко.
---------- Добавлено 28.08.2016 в 22:20 ----------
Там, кстати, есть еще одна причина. Когда слаг меняется, а id-шник остается, можно по нему делать редирект всех старых адресов на новый.
---------- Добавлено 28.08.2016 в 22:22 ----------
ТС-у подсказка: естественно, поле слагов нужно делать как минимум юником.
---------- Добавлено 28.08.2016 в 22:34 ----------
На Авито, кстати, имена объявлений могут совпадать. Числовой id-шник помимо всего прочего обеспечивает уникальность адресов.
Спасибо всем, да много статей не будет, максимум 1000. Решил убрать id из url и добавить проверку url перед добавление в БД.
Когда слаг меняется, а id-шник остается, можно по нему делать редирект всех старых адресов на новый.
...
Числовой id-шник помимо всего прочего обеспечивает уникальность адресов.
Что помогает тупо парсить сайт простым перебором номеров в url.
Решил убрать id из url и добавить проверку url перед добавление в БД.
Если «url» будет добавлять админ, а не рядовой пользователь сайта, в этом нет особой необходимости. Вы лучше добавьте проверку на наличие исключительно допустимых символов в url'е/пути, перед тем как по нему (или по его отдельной части) делать запрос к БД.
Если «url» будет добавлять админ, а не рядовой пользователь сайта, в этом нет особой необходимости. Вы лучше добавьте проверку на наличие исключительно допустимых символов в url'е/пути, перед тем как по нему (или по его отдельной части) делать запрос к БД.
Да, буду сам лично добавлять, символы не буду проверять, так как сам знаю что можно писать и каким должен быть url. Я добавлю только проверку, что бы не получилось 2 поста с одинаковыми ссылками.
Я вам выше писал про юники. Сервер БД не даст создать дублирующиеся значения. С первичным ключом то же самое.
---------- Добавлено 29.08.2016 в 17:02 ----------
В добавок, чтобы с этим было меньше проблем, разделите логику добавления поста на два этапа: собственно создание с указанием слага (или имени, по котором слаг будет формироваться автоматом) и редактирование, т.е. заполнение всех прочих полей.
---------- Добавлено 29.08.2016 в 17:03 ----------
Естественно, при успешном создании записи переход на форму редактирования должен происходить автоматически (редирект).