Форум об интернет-маркетинге
Вернуться   Форум об интернет-маркетинге > Технические вопросы > Веб-строительство

Ответ
 
Опции темы
Старый 15.07.2020, 16:14   #11
ziliboba0213
Позитив =)
Академик
 
Аватар для ziliboba0213
 
Регистрация: 21.06.2020
Адрес: Санкт-Петербург
Сообщений: 4,367
Сказал(а) спасибо: 24,649
Получил(а) "Спасибо": 13,457
Нарушения: 0/0 (0)
Репутация: 1158348

По умолчанию Re: Помогите с SQL запросом replace

Цитата:
Сообщение от sanek1991 Посмотреть сообщение
Что естественно приводит неправильному формированию alt у картинок.
Как-бы вырезать эти кавычки ?
Так тут точно обычным
PHP код:
UPDATE table SET field REPLACE(field'"'''); 
ziliboba0213 вне форума   Ответить с цитированием
Старый 15.07.2020, 16:17   #12
sanek1991
Senior Member
Профессор
 
Регистрация: 21.06.2020
Сообщений: 859
Сказал(а) спасибо: 80
Получил(а) "Спасибо": 187
Нарушения: 0/0 (0)
Репутация: 74780

Thread Starter Re: Помогите с SQL запросом replace

Это понятно, только мне не нужно удалять кавычки из поля title.
Мне их нужно удалить при записи в поле message

Я конечно могу их удалить из базы в title, но потеряется их назначение в названии темы.
Хотелось оставить title в оригинале.
sanek1991 вне форума   Ответить с цитированием
Старый 15.07.2020, 16:24   #13
oleg_ws
На серче с 01.11.2011
Аспирант
 
Регистрация: 02.07.2020
Сообщений: 68
Сказал(а) спасибо: 186
Получил(а) "Спасибо": 56
Нарушения: 0/0 (0)
Репутация: 2613

По умолчанию Re: Помогите с SQL запросом replace

Цитата:
Сообщение от sanek1991 Посмотреть сообщение
ziliboba0213, это при простом replace
а мне нужно использовать значение из поля title

Я почитал доки, пишут что в таких случаях нужно использовать concat, но MySQL еще не изучал
То, что помечено "чем заменить" это не просто текст, а некое выражение из констант, функций, знаков действий, значений и т.п.
oleg_ws вне форума   Ответить с цитированием
Сказали спасибо:
Старый 15.07.2020, 16:30   #14
sanek1991
Senior Member
Профессор
 
Регистрация: 21.06.2020
Сообщений: 859
Сказал(а) спасибо: 80
Получил(а) "Спасибо": 187
Нарушения: 0/0 (0)
Репутация: 74780

Thread Starter Re: Помогите с SQL запросом replace

Цитата:
Сообщение от oleg_ws Посмотреть сообщение
То, что помечено "чем заменить" это не просто текст, а некое выражение из констант, функций, знаков действий, значений и т.п.
Так мне и нужно прикрутить функцию замены кавычек в title этому replace
REPLACE (message, '[ATTACH', CONCAT('[ATTACH alt="', title, ' + фото"'))

Что-бы кавычки не попадали в message
Я эту функцию не знаю.
По идее нужно еще один replace делать вместо title.
Так можно?
Какой будет конечный код ?
sanek1991 вне форума   Ответить с цитированием
Старый 15.07.2020, 21:32   #15
Sitealert
Слесарь-сайтосборщик
Доцент
 
Регистрация: 22.06.2020
Адрес: Замкадье
Сообщений: 403
Сказал(а) спасибо: 985
Получил(а) "Спасибо": 1,178
Нарушения: 0/0 (0)
Репутация: 180645

По умолчанию Re: Помогите с SQL запросом replace

Код:
REPLACE (message, '[ATTACH', CONCAT("[ATTACH alt='", title, " + фото'"))
Если, конечно, в title нет О'Генри.
Sitealert вне форума   Ответить с цитированием
Старый 15.07.2020, 21:41   #16
Alex Klo
Дед
Профессор
 
Аватар для Alex Klo
 
Регистрация: 21.06.2020
Адрес: Ленинград
Сообщений: 514
Сказал(а) спасибо: 3,855
Получил(а) "Спасибо": 2,091
Нарушения: 0/0 (0)
Репутация: 746638

По умолчанию Re: Помогите с SQL запросом replace

а можно всё одним запросом типа:
Цитата:
UPDATE table SET field = REPLACE(field, '111', '222') WHERE ( SELECT field FROM table2 WHERE field LIKE '*'*' OR field LIKE '*"*' );
Цитата:
Сообщение от ziliboba0213 Посмотреть сообщение
Это самое бесячее в базах для меня
просто ты не умеешь это готовить с этим бороться...
я ещё в 94-х годах писал подобные исправляющие запросы - кавычки, запятые, пробелы, регистры букв, замена анг. на рус....
Alex Klo вне форума   Ответить с цитированием
Старый 15.07.2020, 21:43   #17
ziliboba0213
Позитив =)
Академик
 
Аватар для ziliboba0213
 
Регистрация: 21.06.2020
Адрес: Санкт-Петербург
Сообщений: 4,367
Сказал(а) спасибо: 24,649
Получил(а) "Спасибо": 13,457
Нарушения: 0/0 (0)
Репутация: 1158348

По умолчанию Re: Помогите с SQL запросом replace

Цитата:
Сообщение от Sitealert Посмотреть сообщение
Если, конечно, в title нет О'Генри.
Это самое бесячее в базах для меня
ziliboba0213 вне форума   Ответить с цитированием
Старый 15.07.2020, 22:11   #18
Sitealert
Слесарь-сайтосборщик
Доцент
 
Регистрация: 22.06.2020
Адрес: Замкадье
Сообщений: 403
Сказал(а) спасибо: 985
Получил(а) "Спасибо": 1,178
Нарушения: 0/0 (0)
Репутация: 180645

По умолчанию Re: Помогите с SQL запросом replace

Цитата:
Сообщение от ziliboba0213 Посмотреть сообщение
Это самое бесячее в базах для меня
Вообще-то можно всё это заменять на мнемоники или коды. Двойные кавычки, например – на " или & #34; по ситуации. Тот же метатайтл без такой замены криво вылезает.
Sitealert вне форума   Ответить с цитированием
Старый 15.07.2020, 22:14   #19
ziliboba0213
Позитив =)
Академик
 
Аватар для ziliboba0213
 
Регистрация: 21.06.2020
Адрес: Санкт-Петербург
Сообщений: 4,367
Сказал(а) спасибо: 24,649
Получил(а) "Спасибо": 13,457
Нарушения: 0/0 (0)
Репутация: 1158348

По умолчанию Re: Помогите с SQL запросом replace

Цитата:
Сообщение от Sitealert Посмотреть сообщение
Вообще-то можно всё это заменять на мнемоники или коды. Двойные кавычки, например – на " или & #34; по ситуации. Тот же метатайтл без такой замены криво вылезает.
Так оно понятно, что можно Но я по старинке иногда парсю в базу с текстов через php Кодить надо, а лень
ziliboba0213 вне форума   Ответить с цитированием
Старый 15.07.2020, 23:05   #20
oleg_ws
На серче с 01.11.2011
Аспирант
 
Регистрация: 02.07.2020
Сообщений: 68
Сказал(а) спасибо: 186
Получил(а) "Спасибо": 56
Нарушения: 0/0 (0)
Репутация: 2613

По умолчанию Re: Помогите с SQL запросом replace

Цитата:
Сообщение от sanek1991 Посмотреть сообщение
В базе у меня есть таблица с полями: title и message

В message есть записи вывода картинки:
[ATTACH type="full"]12345[/ATTACH]

Мне нужно в эту запись массово добавить alt со значением из поля title, что-бы получить такой формат картинки:
[ATTACH alt="title + фото" type="full"]12345[/ATTACH]
Если есть проблема по написанию SQL-запроса тогда проще забекапить таблицу и заменить контекст как обычный текстовой файл каким-либо текстовым редактором или написав какую-ту простейшую прогу на чем-то вроде визуал-бейсика или на том же php
oleg_ws вне форума   Ответить с цитированием
Ответ


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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 22:35. Часовой пояс GMT +3.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc. Перевод: zCarot