Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 24.10.2014, 01:36
Новичок на форуме
Отправить личное сообщение для skuty Посмотреть профиль Найти все сообщения от skuty
 
Регистрация: 28.01.2014
Сообщений: 9

есть сайты
site.ua/services
site.kiev.ua/services

site.dn.ua/services
site.dn.ua/Dobropole/services
site.dn.ua/Kirovskoe/services
site.dn.ua/Debalcevo/services

site.lviv.ua/services
site.lviv.ua/Zolochiv/services

и т.д. ...

для каждого разное содержимое.

нужно определить адрес загружаемого сайта и вывести соответственный блок.
Ответить с цитированием
  #12 (permalink)  
Старый 24.10.2014, 01:57
Кандидат Javascript-наук
Посмотреть профиль Найти все сообщения от terminator-101
 
Регистрация: 14.10.2014
Сообщений: 117

skuty,

вот так попробуйте
/^site\.(ua|kiev|dn|lviv)\S*\/services$/i
Ответить с цитированием
  #13 (permalink)  
Старый 24.10.2014, 02:14
Кандидат Javascript-наук
Посмотреть профиль Найти все сообщения от terminator-101
 
Регистрация: 14.10.2014
Сообщений: 117

skuty,
Точней, наверное, вот так будет

/^site\.(ua|kiev|dn|lviv)[/\w.-]*\/services$/i

Хотя для вас это особого значения не имеет, Вам насколько я понял, просто адрес надо хапнуть, на валидность проверять не надо.
ЗЫ и вот еще что. Если допустимы адреса вида site.ua/services/ (со слешем в конце) то

/^site\.(ua|kiev|dn|lviv)[/\w.-]*\/services\/?$/i

Последний раз редактировалось terminator-101, 24.10.2014 в 02:19.
Ответить с цитированием
  #14 (permalink)  
Старый 24.10.2014, 02:38
Кандидат Javascript-наук
Посмотреть профиль Найти все сообщения от terminator-101
 
Регистрация: 14.10.2014
Сообщений: 117

skuty,
Да, вот еще что. Если будешь дергать не именно в таком виде, как ты написал site... а как то http://... то, само сабой, первый знак ^ тебе не нужен.
Ответить с цитированием
  #15 (permalink)  
Старый 24.10.2014, 06:30
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Сообщение от skuty
нужно определить адрес загружаемого сайта и вывести соответственный блок
Не уж то сервер не знает для какого региона генерируется страница?
Он наверняка знает, а значит не нужно никаких странных регулярок. Заметь, блок твой не проиндексируется поисковиками при твоем подходе )
__________________
В личку только с интересными предложениями
Ответить с цитированием
  #16 (permalink)  
Старый 24.10.2014, 18:09
Профессор
Отправить личное сообщение для kostyanet Посмотреть профиль Найти все сообщения от kostyanet
 
Регистрация: 23.10.2010
Сообщений: 2,718

Процитирую целиком

Сообщение от skuty
есть сайты
site.ua/services
site.kiev.ua/services

site.dn.ua/services
site.dn.ua/Dobropole/services
site.dn.ua/Kirovskoe/services
site.dn.ua/Debalcevo/services

site.lviv.ua/services
site.lviv.ua/Zolochiv/services

и т.д. ...

для каждого разное содержимое.

нужно определить адрес загружаемого сайта и вывести соответственный блок.
Нетрудно заметить что в отличии от нормальных Search string - с которыми вы бы начухались - тут используются пути, которые фактически отождествляют namespace.

Несмотря что идея бредовая грузить весь контент динамически, контроллер тут очевидный объект (можно даже наследование организовать, если есть какие-то общие методы или свойства).

берем

site.dn.ua/services
site.dn.ua/Dobropole/services
site.dn.ua/Kirovskoe/services
site.dn.ua/Debalcevo/services

делаем

var sites = {

   'site.dn.ua':{

      services:{// тут добро},

      Dobropole:{
          services:{// тут добро}
      },

      Kirovskoe:{
          services:{// тут добро}
      },

      Debalcevo:{
          services:{// тут зло}
      }

   }
};


Теперь значиццо sites[location.hostname] нам дает путь к пропертям/методам данного домена, ну а дальше и так понятно. Колем pathname и профтыкаем в следующие квадратные скобки и немедленно попадаем на правильную дорогу.
Ответить с цитированием
  #17 (permalink)  
Старый 24.10.2014, 18:15
Профессор
Отправить личное сообщение для kostyanet Посмотреть профиль Найти все сообщения от kostyanet
 
Регистрация: 23.10.2010
Сообщений: 2,718

Я к тому что какой тут в п...у свич?
Ответить с цитированием
  #18 (permalink)  
Старый 24.10.2014, 18:22
Профессор
Отправить личное сообщение для kostyanet Посмотреть профиль Найти все сообщения от kostyanet
 
Регистрация: 23.10.2010
Сообщений: 2,718

Кстати да, я так навигацию делаю на сайтах, причем обычным массивом, без наворотов в стиле implements Countable, потому что в php есть указатели. С указателями приходиться быть очень осторожным, но зато вся тряхомудия туда-сюда не переписывается. Навигация базируется в БД в каноничном id pid дереве, откуда я ее засасываю в массив (ну, в объект конечно, чтобы глобально добывать) и дальше в любое время откуда хочешь что надо читаешь или пишешь.
Ответить с цитированием
  #19 (permalink)  
Старый 25.10.2014, 22:32
Новичок на форуме
Отправить личное сообщение для skuty Посмотреть профиль Найти все сообщения от skuty
 
Регистрация: 28.01.2014
Сообщений: 9

Я начинающий в этом деле... немного знаю.
Задача такова есть сайты:

site.dn.ua/services
site.dn.ua/Dobropole/services
site.dn.ua/Kirovskoe/services

у них один и тот же файл пхп(разная база данных). Я, хочу вставить небольшой блок инфо для каждого свой.

Потому решил делать проверку на window.location.href и выбрать регуляркой первое слово после (.ua).
Проверяю cвитчом.. какой сайт(точнее под сайт) и соответсвенный блок вставляю.

Минус этого способа, я немогу проверить одним свитчом
kiev.ua
или
dn.ua

Можно делать както свитч в свитче?) Допустим ниодин вариант не подошел, запустить другую проверку.(Допустив в дефаульте вставить?)
Ответить с цитированием
  #20 (permalink)  
Старый 26.10.2014, 19:16
Профессор
Отправить личное сообщение для kostyanet Посмотреть профиль Найти все сообщения от kostyanet
 
Регистрация: 23.10.2010
Сообщений: 2,718

Кто ему такое задание дал, Стрелков что ли?

Ладно, понятно что вы научились свитчить и собираетесь играть эту струну до пенсии.

А вот в случае с готовой картой ресурсов которая их по лесенке вам поднимет и выдаст что конкретно непонятно?
Ответить с цитированием
Ответ


Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проблемма с jquery fancybox, не могу понять в чем дело! bandesign jQuery 1 16.09.2013 16:35
Скрипт не работает в FF и опера, но работает в IE(в чем дело???) Cepera Firefox/Mozilla 1 24.08.2012 16:46
При установке CSS для Body "overflow: hidden" съезжает верстка, в чем дело? Slevin Kelevra Общие вопросы Javascript 18 08.07.2012 20:27
Не пойму в чем дело danilkin jQuery 0 13.04.2011 02:29
не могу понять в чём ошибка scuter Общие вопросы Javascript 2 28.08.2008 15:22