Как обновить таблицу title, добавив данные с другой строки?

Как обновить таблицу title, добавив данные с другой строки?

#1 11 сентября 2013 в 10:38
Гуру, подскажите пожалуйста, как сделать некий запрос, который позволит обновить данные строки title, чтобы в title добавилась запятая и данные из другой строки?

Т.е например есть строка title в InstantMap — Клуб Пятигорье
в строке city указан город Казань

В результате хочу получить title — Клуб Пятигорье, Казань
#2 11 сентября 2013 в 10:44
  1. UPDATE TABLE SET title = CONCAT(title, ', ', city)

данные строки title

столбца
#3 11 сентября 2013 в 11:02
а надо указывать где-то таблицу из которой в которую надо вставить или он сам определит?

посмотрел у мапса оказывается таблица городов идет отдельно от таблицы объектов.

т.е у объектов таблица site_map_items и столбец title

а в site_map_markers хранятся как раз маркеры в столбце addr_city
#4 11 сентября 2013 в 11:15
yury, в шаблоне не судьба это сделать?
#5 11 сентября 2013 в 11:22

yury, в шаблоне не судьба это сделать?

lokanaft
нет, т.к кто то будет вписывать в само название, и тем самым тогда город будет дублироваться два раза
#6 11 сентября 2013 в 11:31

yury, в шаблоне не судьба это сделать?

lokanaft
но если скажете как это сделать в мапсе, тоже буду благодарен. подумаю как логичнее
#7 11 сентября 2013 в 11:53

кто то будет вписывать в само название, и тем самым тогда город будет дублироваться два раза

yury
а как приклеивание города в базе спасет от этого? будет то же самое
если конечно вы не будете сначала проверять вхождение города в тайтл перед приклеиванием
в шаблоне действительно проще
#8 11 сентября 2013 в 11:57

в шаблоне действительно проще

r2
к сожалению не знаю как в шаблонах прописывать чтобы титл формировался с городом
#9 11 сентября 2013 в 11:57

но если скажете как это сделать в мапсе

yury
в /components/maps/frontend.php:
  1.  
  2. $item['title'] = $inCore->request('title', 'str');
  3.  
  4. $item['addr_id'] = $inCore->request('addr_id', 'array');
  5. $item['addr_country'] = $inCore->request('addr_country', 'array');
  6. $item['addr_city'] = $inCore->request('addr_city', 'array');
  7.  
после добавить:

  1.  
  2. $item['title'] = $item['title'] . ', ' . $item['addr_city'][key($item['addr_city'])];
  3.  
будет добавляться название первого города из всех указанных адресов
#10 11 сентября 2013 в 11:58

к сожалению не знаю как в шаблонах прописывать чтобы титл формировался с городом

yury

вместо {$item.title}:

{$item.title}, {$item.addr_city}
#11 11 сентября 2013 в 19:58

вместо {$item.title}:

{$item.title}, {$item.addr_city}

r2
так это обновится заголовок карточки. а сам title который мета тег остался без города
#12 11 сентября 2013 в 20:01
подправил строку

  1. if (!$item['seotitle']){ $item['seotitle'] = $item['title']; }
на

  1. if (!$item['seotitle']){ $item['seotitle'] = $item['title'] . ', ' . $item['addr_city']; }
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.