Доброго времени суток, подскажите пожалуйста как изменить ссылку? Есть бд в ней хранится и id и альтернативное имя. Сейчас ссылка имеет такой вид, site.ru/cat/1 хочу сделать что бы ссылка была такого вида, site.ru/cat/namecat На данный момент добился только такого, что ссылка имеет вид site.ru/cat/namecat , но при переходе на нее ничего не происходит остаешься так же на главной странице. ЧПУ настроен. Видимо моих знаний не хватает что бы при переходи по имени определялся и id но не выводился в ссылке
Чпу настроен так, Код (Text): RewriteRule ^test/(cat)/([^.]+)/?$ index.php?do=test&op=cat&id=$2 [L] в базе хранится namecat? Да, в базе namecat хранится скрипт понимает что с этим делать? Понимает что делать если site.ru/test/cat/1 я не могу заставить его понимать что делать если ссылка такая, site.ru/test/cat/namecat
Где код PHP который отвечает за это и запрос в базу? По идее нужно это менять. Через .htaccess? Выкладывай если да
Вот запрос, Код (Text): SELECT * FROM my_cat ORDER BY id ASC Вот .htacces, Код (Text): RewriteRule ^test/(cat)/([^.]+)/?$ index.php?do=test&op=cat&id=$2 [L] Заранее благодарю.
У меня так, PHP: if ( !isset($_GET['id']) ) { $id = 0; } else { $id = intval($_GET['id']); } [/QUOTE]
Нету, я изначально же так и объяснял. В первом моем вопросе. То что по id заходит а по name нет. Помогите пожалуйста как это реализовать
Поддержка ЧПУ – это глубоко интегрированный механизм. Если поверхностно, то снимите ограничение на выуживание исключительно числа из GET-параметра в представленном выше коде, заменив его каким-нибудь вменяемым фильтром, препятствующим SQL-инъекциям, и делайте по этому уже символьному значению запрос к таблице, где присутствует соответствующее поле со слагами (символьными идентификаторами).
@keaks88 тут легко запутаться, но где-то есть SQL запрос который по id категории получает её данные? Или нужно все категории выбрать из базы и отобразить их список? Задача просто не вся видимо описана.
Работает через глобальную переменную, Запрос один, тот что давал выше.На странице у меня выводятся все категории. Через, foreach
выше читайте я все описал что нужно сделать, при переходе по ссылке где используется имя что бы попадало на страницу так же как и при переходе по id
вот я этого не вижу, SQL без выбора id, условия без выполнения запроса. Если всё работает с id то поменяй его на name и всё, в самом SQL запросе.