Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Получить переменные из url адреса нетипичным образом

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (3): [1] 2 3 »   

> Описание: _GET
Heavenanvil
Отправлено: 11 Февраля, 2017 - 08:44:13
Post Id


Частый гость


Покинул форум
Сообщений всего: 183
Дата рег-ции: Февр. 2013  


Помог: 0 раз(а)




Здравствуйте.
Возникла следующая проблема, пока не знаю как решить.

Есть ссылка вида:
mysite.ru/index.php?category=mycategory&subcategory=mysubcategory
допустим она через _GET обрабатывается корректно.
Я получаю _GET['category'] и _GET['subcategory'], чтобы в дальнейшем их использовать на странице.

Но мне нужно сделать ссылку немного другого вида:
mysite.ru/category/subcategory

Допустим я такую ссылку сформировал, но как мне её обработать через _GET, чтобы получить category и subcategory?
 
 Top
teleoperator27
Отправлено: 11 Февраля, 2017 - 10:05:56
Post Id



Посетитель


Покинул форум
Сообщений всего: 265
Дата рег-ции: Янв. 2017  


Помог: 21 раз(а)




Внешний вид ссылки есть, вопрос, каким образом сформирована? Через .htaccess? Тогда так же и получать через GET['category'] и _GET['subcategory']. Вообще просто надо распечатать
и посмотреть, что в массиве на этой странице

(Отредактировано автором: 11 Февраля, 2017 - 10:07:02)

 
My status
 Top
Heavenanvil
Отправлено: 11 Февраля, 2017 - 10:18:12
Post Id


Частый гость


Покинул форум
Сообщений всего: 183
Дата рег-ции: Февр. 2013  


Помог: 0 раз(а)




teleoperator27, нет. Ссылка сформирована через php примерно вот таким образом.
mysite.ru/$var1/$var2
Соответственно выдает 404.

.htaccess не использовал.
 
 Top
Строитель Модератор
Отправлено: 11 Февраля, 2017 - 13:01:17
Post Id



Участник


Покинул форум
Сообщений всего: 1580
Дата рег-ции: Февр. 2014  
Откуда: Украина


Помог: 73 раз(а)




Heavenanvil, в .htaccess пропишите
Спойлер (Отобразить)
Все запросы будут перенаправлены на index.php
А принимать параметры будете в $_SERVER['REQUEST_URI'] .
 
 Top
teleoperator27
Отправлено: 11 Февраля, 2017 - 13:12:52
Post Id



Посетитель


Покинул форум
Сообщений всего: 265
Дата рег-ции: Янв. 2017  


Помог: 21 раз(а)




Перенаправляй через .htaccess

CODE (htmlphp):
скопировать код в буфер обмена
  1. DirectoryIndex index.php
  2. RewriteEngine On
  3. RewriteRule ^([^/]*)/([^/]*)$ index.php?category=$1&subcategory=$2 [L]

и все данные бери из GET как и брал
 
My status
 Top
Heavenanvil
Отправлено: 11 Февраля, 2017 - 14:17:32
Post Id


Частый гость


Покинул форум
Сообщений всего: 183
Дата рег-ции: Февр. 2013  


Помог: 0 раз(а)




Строитель, все запросы? А если для других php-файлов, мне нужны обычные запросы?
Это должно касаться только файла index.php

update
teleoperator27, ваш способ помог. Спасибо!

(Отредактировано автором: 12 Февраля, 2017 - 07:12:48)

 
 Top
Heavenanvil
Отправлено: 12 Февраля, 2017 - 07:43:38
Post Id


Частый гость


Покинул форум
Сообщений всего: 183
Дата рег-ции: Февр. 2013  


Помог: 0 раз(а)




teleoperator27, на одном хостинге нормально, на другом, когда добавляю правило RewriteRule у меня теряется вся вёрстка. Как будто css файла не существует. С чем это может быть связано?
 
 Top
teleoperator27
Отправлено: 12 Февраля, 2017 - 08:08:39
Post Id



Посетитель


Покинул форум
Сообщений всего: 265
Дата рег-ции: Янв. 2017  


Помог: 21 раз(а)




смотрите права на папки, правильно ли пути прописаны. css-файлы должны открываться в браузере по прямому пути. типа site.ru/css/style.css В данном случае содержимое этого .htaccess никак не влияет
 
My status
 Top
Heavenanvil
Отправлено: 12 Февраля, 2017 - 08:30:09
Post Id


Частый гость


Покинул форум
Сообщений всего: 183
Дата рег-ции: Февр. 2013  


Помог: 0 раз(а)




Косяк вылазит только когда включаю это правило.
Другие правила работают нормально вроде.
Пробовал все остальные правила отключать.
На папки права выставлены по умолчанию, но без правила все было ок с оформлением.

Странно, что на одном хостинге работает замечательно, а на другом с косяком.
 
 Top
teleoperator27
Отправлено: 12 Февраля, 2017 - 09:01:27
Post Id



Посетитель


Покинул форум
Сообщений всего: 265
Дата рег-ции: Янв. 2017  


Помог: 21 раз(а)




а какой путь до файла стилей?
 
My status
 Top
Heavenanvil
Отправлено: 12 Февраля, 2017 - 10:45:16
Post Id


Частый гость


Покинул форум
Сообщений всего: 183
Дата рег-ции: Февр. 2013  


Помог: 0 раз(а)




teleoperator27, путь site.ru/css/style.css
 
 Top
teleoperator27
Отправлено: 12 Февраля, 2017 - 11:11:56
Post Id



Посетитель


Покинул форум
Сообщений всего: 265
Дата рег-ции: Янв. 2017  


Помог: 21 раз(а)




попробуй так

CODE (htmlphp):
скопировать код в буфер обмена
  1. RewriteEngine on
  2. RewriteBase /
  3. RewriteCond $1 !^(index\.php|css/.*|js/.*|img/*)
  4. RewriteRule ^([^/]*)/([^/]*)$ index.php?category=$1&subcategory=$2 [L]



css js img это папки со стилями, картинками и js
 
My status
 Top
Heavenanvil
Отправлено: 12 Февраля, 2017 - 11:19:45
Post Id


Частый гость


Покинул форум
Сообщений всего: 183
Дата рег-ции: Февр. 2013  


Помог: 0 раз(а)




teleoperator27, не помогло.
Причём странно то, что даже если я использую вместо index.php файл category.php (к примеру) и прописываю соответствующие правила в .htaccess, то при открытии index.php всё равно вёрстка слетает. А без правила всё ок. Что за мистика?
 
 Top
teleoperator27
Отправлено: 12 Февраля, 2017 - 11:49:40
Post Id



Посетитель


Покинул форум
Сообщений всего: 265
Дата рег-ции: Янв. 2017  


Помог: 21 раз(а)




стили не по показывают, а код php обрабатывается? Проблема только в стилях?
 
My status
 Top
Heavenanvil
Отправлено: 12 Февраля, 2017 - 12:06:56
Post Id


Частый гость


Покинул форум
Сообщений всего: 183
Дата рег-ции: Февр. 2013  


Помог: 0 раз(а)




teleoperator27, да, php код успешно обрабатывается и никаких ошибок не выдаёт.
Проблема только в том, что сайт отображается без оформления. Так, будто css файла не существует. Хотя он есть и если проинспектировать исходный код, то там все пути правильно прописываются.

Опачки, сейчас заметил, что при попытке открыть напрямую css файл в браузере, меня кидает на файл category.php, и соответственно css файл я открыть не могу.
Такая же беда и с js файлами.

(Отредактировано автором: 12 Февраля, 2017 - 12:50:04)

 
 Top
Страниц (3): [1] 2 3 »
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB