Страница 1 из 1
Запись в базу MySQL с символом "\n"
Добавлено: 2010-11-30 11:00:21
mediamag
Доброго времени суток. Хочу записать в базу mysql некоторые данные. Сам новичёк. вот запрос:
Код: Выделить всё
${lookup mysql{INSERT INTO `user_blacklist` (sender_address, local_recipient, added_date) VALUES ('${quote_mysql:$rheader_Subject:}', '${quote_mysql:$sender_address}', CURDATE() )}}
В базу записывается всё корректно кроме колонки "sender_domain". В нее текстовое значение записывается криво, а именно (привожу дамп колонки):
Тоесть впереди пробел и в конце символ "\n", хотя в колонку "local_recipient" все записывается чётко. Помогите избавиться от неприятных символов
Re: Запись в базу MySQL с символом "\n"
Добавлено: 2010-11-30 11:43:29
rmn
Re: Запись в базу MySQL с символом "\n"
Добавлено: 2010-11-30 11:46:10
mediamag
Да я читал про него, и пытался влепить его в разные части кода и как показано в мануале, но все бестолку. Если не сложно подскажите где в моём случае должен быть трим?
Re: Запись в базу MySQL с символом "\n"
Добавлено: 2010-11-30 11:57:59
skeletor
Приводите код, где написан этот sql-запрос.
Re: Запись в базу MySQL с символом "\n"
Добавлено: 2010-11-30 12:02:48
rmn
mediamag писал(а):Да я читал про него, и пытался влепить его в разные части кода и как показано в мануале, но все бестолку. Если не сложно подскажите где в моём случае должен быть трим?
как-то так:
Код: Выделить всё
${lookup mysql{INSERT INTO `user_blacklist` (sender_address, local_recipient, added_date) VALUES (TRIM(BOTH ' \n' FROM '${quote_mysql:$rheader_Subject:}'), '${quote_mysql:$sender_address}', CURDATE() )}}
и тут какое-то несоответствие:
Код: Выделить всё
столбцы значения
sender_address $rheader_Subject
local_recipient $sender_address
added_date CURDATE()
Re: Запись в базу MySQL с символом "\n"
Добавлено: 2010-11-30 12:18:04
mediamag
Не помогло, по прежнему записывается так же с левыми знаками
Re: Запись в базу MySQL с символом "\n"
Добавлено: 2010-12-22 17:43:54
Gloft
В запросе
в качестве суфикса(строки) поиска для замены используется ПОСЛЕДОВАТЕЛЬНОСТЬ ' \n' а у тебя ее в искомой строке нет, есть только отдельно пробел и знак новой строки.
Попробуй так
Код: Выделить всё
${lookup mysql{INSERT INTO `user_blacklist` (sender_address, local_recipient, added_date) VALUES (LTRIM(TRIM(BOTH '\n' FROM '${quote_mysql:$rheader_Subject:}')), '${quote_mysql:$sender_address}', CURDATE() )}}
TRIM удаляет знак новой строки, а LTRIM начальный пробел.