http://onedayfiles.com/E2xszQAhUB
siv1987, а как же быть? Не использовать мод рерайт я не могу, а с ним, получается не могу проверить, есть ли точки в конце урла или нет? Или все-таки как-то можно это проверить, несмотря на мод рерайт?
Так вся соль в том, что страница 1-vasya.pupkin-p1 открывается и по запросу 1-vasya.pupkin-p1 и по запросу 1-vasya.pupkin-p1. и по запросу 1-vasya.pupkin-p1..................... А мне надо чтобы эта страница открывалась только по запросу 1-vasya.pupkin-p1
Даже можно и проще сделать. Написал в htaccess вот что:
RewriteEngine on
RewriteRule ^([a-z]+)$ ?t=$1
Ввожу в адресную строку localhost/test/aa...
Скрипт выводит aa ( Опять же без точек!!!)
Ввожу в адресную строку localhost/test/?t=aa...
Скрипт выводит aa... Как положено, с точками!
Так как тогда проверить что ввел пользователь? Или это не реально? Не верю!
Нет, в htaccess не обязательно.
Извините, не понял if (последний_символ($_GET['youVar']) == '.')?
И, кстати, если вводить localhost/test/1-vasya.pupkin-p1... а не localhost/test/?t=1-vasya.pupkin-p1... , то в $_GET['t'] нет последних точек, поэтому вот это: if (последний_символ($_GET['youVar']) == '.') походу дела не сработает.
Милованов Ю.С, да, тему поднимал, но решил переформулировать вопрос, поэтому создал новую. Я бы хотел, чтобы если в конце запроса точки, то отдавалась 404. Но я не понимаю, почему правило не реагирует на точки, которые написаны в конце гет-запроса.
Я не понимаю вот чего:
Ввожу в адресную строку
?article=123-vasya.pupkin-p123-
делаю так: echo $_GET['article'];
Выводит: 123-vasya.pupkin-p123-
?article=123-vasya.pupkin-p123...
Выводит: 123-vasya.pupkin-p123 (Без точек)
Не знаете почему?
Chukcha, [L] стоит.
Сам сейчас удивляюсь как я такое написал, и самое главное, что работает.
Вот так написал
Не помогло. Опять же точки в конце пропускает.
Милованов Ю.С, спасибо за совет, но не помогло.
foxi, у меня еще есть проверка внутри скрипта.
И самое интересное, что если ввести, например,
то откроется 404, но если ввести
то страница
открывается без ошибок.
Как это предотвратить?
P.S. Кстати $_GET['article'] почему-то отбрасывает последние точки. И еще, если поставить в конце какой-нибудь другой символ вместо точки, то откроется 404.
siv1987, к сожалению, не помогло.