Модераторы: korob2001, ginnie
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Уборка спец символов, Перед добавление в MySQL 
:(
    Опции темы
MaxPayne
Дата 11.2.2006, 15:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 72
Регистрация: 9.8.2005

Репутация: нет
Всего: нет



Перед добавление в базу необходимо убрать спецсимволы:
\x00
\n
\r
\
'
"
\x1a

Делаю так:

$line =~ s|\\|\\\|g;
$line =~ s|\\n|\\\n|g;

Первая строка дает ошибку, вторая не работает. С другими тоже проблемс.


PM MAIL WWW ICQ   Вверх
korob2001
Дата 12.2.2006, 21:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2871
Регистрация: 29.12.2002

Репутация: 13
Всего: 61



Ты хочешь закоментировать символы, которые указал выше?
Код

#!/usr/bin/perl -w
use strict;

my $str = "Hello,\tworld\n!";

for ( $str ) {
      s/\n/\\n/;
      s/\t/\\t/;
}

print $str;

Также попробуй последовательности \Q, \q, \E


--------------------
"Время проходит", - привыкли говорить вы по неверному пониманию. 
"Время стоит - проходите вы".
PM MAIL WWW ICQ MSN   Вверх
tishaishii
Дата 14.2.2006, 01:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Создатель
***


Профиль
Группа: Завсегдатай
Сообщений: 1262
Регистрация: 14.2.2006
Где: Москва

Репутация: нет
Всего: 8



Код
use DBI;
my$dbh=DBI->connect($dsn, $user, $pwd, $attr);
my$sth=$dbh->prepare(<<'.');
INSERT INTO `T1` (
    `id_t1`,
    `title`
) VALUES (
    ?, ?
)
.
$sth->execute($id_t1, $title);
$sth->finish;
$dbh->disconnect;

Драйвер сам всё закомментирует.
А что ещё?
PM MAIL ICQ Skype   Вверх
MaxPayne
Дата 16.2.2006, 09:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 72
Регистрация: 9.8.2005

Репутация: нет
Всего: нет



А в какой строке драйвер все закомментирует?
Здесь: $sth=$dbh->prepare(<<'.');?
Т.е. мне ее надо добавить в код?

$dbh = DBI->connect("DBI:mysql:user:localhost", "", "");
$dbh->do("INSERT INTO ses VALUES ('$i', '$s' );");
$dbh->disconnect;
PM MAIL WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Perl: CGI программирование"
korob2001
sharq
  • В этом разделе обсуждаются вопросы относящиеся только к CGI программированию
  • Если ваш вопрос не относится к системному или CGI программированию, задавайте его в общем разделе
  • Если ваш вопрос относится к системному программированию, задавайте его здесь
  • Интерпретатор Perl можно скачать здесь ActiveState, O'REILLY, The source for Perl
  • Справочное руководство "Установка perl-модулей", качать здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Perl: разработка для Web | Следующая тема »


 




[ Время генерации скрипта: 0.0432 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.