Добрый день, проблема у меня в следующем: пишу небольшой сайт на CI и решил сделать доступ к функциям через роутинг с формированием статического uri.То есть на сайте есть ссыки в виде href='push'(к примеру) и соответствующее условие в роуте мол если в первом сегменте push то запускаю такой то метод. Вот, и проблема в следующем что когда индексная страница запущена и ты нажимаешь на разные ссылки то все работает нормально, к примеру нажал push-получил http://localhost/sample/index.php/push, нажал stop-получил http://localhost/sample/index.php/stop. Но если я зашел в меню push а в нем нажал еще на какую-нибудь ссылку то uri складывается в вид http://localhost/sample/index.php/push/какая то ссылка/ и при нажатии к примеру уже на ссылку stop я получаю строку http://localhost/sample/index.php/push/какая то ссылка/stop вместо ожидаемой http://localhost/sample/index.php/stop. Естественно уже никакой роутинг не работает ибо нарушаются условия расположения сегментоы и выходит корч(( Надеюсь понятно объяснил, и хотел бы спросить как тут быть? P.S. гуглил и нашел что то про модуль mod_rewrite,прочитал но решения для себя не увидел т.к. мне не надо переписывать динамические ссылки в статические(они у меня уже все изначально статич.)
А если про html прочитать? Ссылочку надо начинать с /, тогда она от самого сайта пойдёт. И в случае, если у вас есть index.php в ЧПУ, скорее всего надо его тоже надо каждый раз указывать. Я обычно фрейворки настраиваю, чтоб у меня не было никакого index.php, это элементарно делается. Как в CI - не знаю, никогда не использовал.
ппц!!!!!!!!!!!!!! спасибо ВАМ ОГРОМНЕЙШЕЕ!!!!!!!!!Я полдня над этим ломал голову, что я только не пробовал и руты менял и ссылки и всякие извращения. P.S. про чтение-на самом деле читаю много и днями напролет за компом сижу, всё к сожалению не запомнить, зато вдалбливается в память когда про..рахаешься с чем-нибудь вот так, на практике. Еще раз спс!!!!!!! Добавлено спустя 26 минут 42 секунды: еще добавлю-раньше, я все делал через if(isset($_GET['link'])){запусти такой то скрипт} и при этом вид ссылки был такой href='?link'(так видел в примерах делали). И оно все работало, если не было статических ссылок (либо если был post то я прописывал заголовок header). Я так понимаю что если я хочу указать переменную $_GET[], то мне надо прописывать ссылку href='?link' а не писать полный путь в ссылке?
В $_GET попадает то, что в URL идёт после знака ?. Если остальную часть текущего URL менять не требуется, её можно опустить и начать сразу с ?