Umbrella 0 09/09/08 09:53 Привет всем.Изменяю ник-нэйм на другой, он меняется - всё нормально, но в цитатах тех пользователей что меня цитировали старый ник остаётся висеть.Можно ли от этого как-нибудь избавиться? Поделиться сообщением Ссылка на сообщение
andaril 4 09/10/08 16:11 есть в Mysql функция замены.UPDATE ibf_posts SET post = REPLACE(post,'1слово','2слово'); Поделиться сообщением Ссылка на сообщение
Yu-val 1 09/10/08 21:43 есть в Mysql функция замены.UPDATE ibf_posts SET post = REPLACE(post,'1слово','2слово');А вот интересно, в том случае, если у пользователя display name и login name отличаются, то в цитатах отображается именно login name. Это можно исправить раз и навсегда? Ну то есть не хочется лезть в базу данных всякий раз, когда будет изменяться display name. Нельзя ли настроить так, чтобы в цитатах показывался актуальный display name? Поделиться сообщением Ссылка на сообщение
Sannis 2 09/10/08 23:59 А вот интересно, в том случае, если у пользователя display name и login name отличаются, то в цитатах отображается именно login name. Это можно исправить раз и навсегда? Ну то есть не хочется лезть в базу данных всякий раз, когда будет изменяться display name. Нельзя ли настроить так, чтобы в цитатах показывался актуальный display name?Устроить можно всё, вот только будет ли это просто и выгодно? Насколько мне известно, в 2.3 в цитатах используется не логин, а ник, существующий на момент написания сообщения. Проще все исправить несоответствие можно запросом, приведённым выше. Поделиться сообщением Ссылка на сообщение
Umbrella 0 09/11/08 07:45 Не получилось.Либо команду прописал не там, либо не сработало.. Зашёл в Мускул, в свою БД, далее в SQL вкладку.Ну и конкретно в таблицу posts пробывал. Поделиться сообщением Ссылка на сообщение
andaril 4 09/11/08 17:39 эм. Ну "не получилось" слишком скудно. Какой был ответ сервера на запрос? Поделиться сообщением Ссылка на сообщение
Umbrella 0 09/12/08 03:57 Ответ сервера на запрос был "Всё круто" а вот изменений на форуме не произошло. как был в цитатах старый ник.так он и остался там висеть... Я уж и аппач перегружал,та же лада. Поделиться сообщением Ссылка на сообщение
Fisana 700 09/12/08 05:31 Может просто пересчет и перестройку надо проделать? Поделиться сообщением Ссылка на сообщение
andaril 4 09/12/08 07:41 цитаты это просто html текст. а что вы писали в запросе? Поделиться сообщением Ссылка на сообщение
Umbrella 0 09/16/08 13:19 Может просто пересчет и перестройку надо проделать?Делал...Не помогло. а что вы писали в запросе?То, что вы написали выше.. Поделиться сообщением Ссылка на сообщение
Umbrella 0 09/16/08 13:48 а "слово1" и "слово2" изменяли??? Да =\слово1-старый ник,слово2-новый Не затруднит написать порядок действий? Может не так делаю что?Зашёл в мускул,далее.. Поделиться сообщением Ссылка на сообщение
desti 10 09/16/08 20:42 (изменено) RЕPLACE(post,'1слово','2слово'); - таким запросом можно такого наворотить, особенно если ник короткий и по русски. У меня есть юзер 'орк', я как представлю, что слова типа шторка-створка станут штГоблина-ствГоблина.. Не, корявый запрос. Ищите уникальные комбинации. Например, запустите такой запрос: select count(*) from ibf_posts where post like '%:name=awas%';Посчитает, сколько найдено awas-ов в цитатах. select post from ibf_posts where post like '%:name=awas)%';Запросиком проверили (глазками посмотрели), правильно ли выбрали сообщения. select post from ibf_posts where post not like '%:name=awas)%' and post like '%awas%';Этим дурным запросиком можно посмотреть сколько раз аваза поминали добрым словом, но не в цитатах. Ну это так, для коллекции.Запросы медленные, на больших и загруженных базах запускать с осторожностью или ставить limit 20. И вот только теперь можно делать Rеplace(post,':name=awas)', ':name=wano)')SQL ответит N rows. Если N=0 - где-то ошиблись. Если N>числа из первого запроса в разы - судорожно ищем бэкап. Поставьте денвер, сделайте локальную копию и тренируйтесь. А на живой базе только с отлаженными запросами. Изменено 16 сентября 2008 пользователем desti Поделиться сообщением Ссылка на сообщение