Как массово редактировать ссылки в бд?

Список разделов phpBBex 1.x (поддерживается) Поддержка 1.x

Описание: У вас проблемы с phpBBex 1.x и вам необходима помощь? Спрашивайте здесь!
Правила раздела: Одна тема — один вопрос или группа связанных вопросов. Обязательно формируйте внятный заголовок, максимально отражающий суть вопроса. Подробно описывайте проблему. Не забудьте указать версию phpBBex и какие моды установлены, по возможности добавьте скриншоты проблемы или ссылку на страницу с проблемой.
Модератор: Поддержка

Сообщение #1 nurgaf » 08.01.2015, 19:05

Приключилась такая штуковина, форум был перенесен на новый адрес (переехал из корневой директории в /forum/). На форуме очень много перелинкованных друг с другом тем, и после переноса форума в новый каталог, естественно все ссылки ссылаются "вникуда". Вопрос: какой командой в бд массово изменить все ссылки (в темах) вида site.ru/viewtopic.php?f=*** на site.ru/forum/viewtopic.php?f=***? =)
nurgaf M
Автор темы
Аватара
Откуда: г.Челябинск
Репутация: 65
С нами: 11 лет

Сообщение #2 Test » 08.01.2015, 19:10

1. Сделай бэкап
2. В бэкапе через текстовый редактор проведи замену
3. Восстанови бэкап
Test
Гость

Сообщение #3 nurgaf » 08.01.2015, 19:15

собсна потому-то я и спросил можно ли это сделать автоматически командой в бд, потому что вручную вспотеть можно перелопатить сотню тем! :eh:
nurgaf M
Автор темы
Аватара
Откуда: г.Челябинск
Репутация: 65
С нами: 11 лет

Сообщение #4 sag-sag » 08.01.2015, 20:24

nurgaf, я делал так: текстовый редактор нотепад. Открывал им базу и делал замену. Есть специальная функция. Там можно автоматом все сразу, или проверяя каждую замену.
sag-sag M
Аватара
Репутация: 411
С нами: 10 лет 8 месяцев

Сообщение #5 Sumanai » 09.01.2015, 05:36

nurgaf:можно ли это сделать автоматически командой в бд

Можно.
Код: Выделить всё
UPDATE phpbb_posts SET post_text = REPLACE(post_text, 'что ищем', 'на что меняем');
Только нужно обратить внимание на экранирование, не помню, как именно там экранируются слеши, самому смотреть лень.
И не забывайте про бекапы.
Sumanai M
Аватара
Репутация: 1677
С нами: 11 лет 2 месяца

Сообщение #6 nurgaf » 09.01.2015, 17:24

Спасибоо =)
nurgaf M
Автор темы
Аватара
Откуда: г.Челябинск
Репутация: 65
С нами: 11 лет

Сообщение #7 stael » 11.01.2015, 14:32

Sumanai:как именно там экранируются слеши
в таком запросе их можно не экранировать :)
stael
Аватара
Откуда: /root/earth/europe/ukraine
Репутация: 19
С нами: 11 лет 1 месяц


Вернуться в Поддержка 1.x