Модератор: Модераторы разделов
-
gcc
- Сообщения: 526
- ОС: FreeBSD 8.0 CURRENT
Сообщение
gcc »
не работает, пробовал по разному:
Код: Выделить всё
$sth = $dbh->prepare( "SELECT count(*) FROM table where $self->{SQL}->{LIKE}");
$sth->execute();
в других классах примерно так формируется:
Код: Выделить всё
$self->{SQL}->{LIKE} = join (" AND ", map { "text LIKE ".$dbh->quote('%'.$_.'%') } @search );
-
diesel
- Бывший модератор
- Сообщения: 5989
- ОС: OS X, openSuSE, ROSA, Debian
Сообщение
diesel »
напечатай query, попробуй выполнить его просто в mysql и увидишь что не так ...
-
gcc
- Сообщения: 526
- ОС: FreeBSD 8.0 CURRENT
Сообщение
gcc »
сделал так:
Код: Выделить всё
my $where = $self->{SQL}->{LIKE};
$sth = $dbh->prepare( "SELECT count(*) FROM table where $where");
проблема была в самом экранировании переменной даже есть так записать
Код: Выделить всё
$sql = 'SELECT count(*) FROM table where'.$self->{SQL}->{LIKE};
или так:
Код: Выделить всё
$sql = qq(SELECT count(*) FROM table where'.$self->{SQL}->{LIKE});
еще нашел модуль
http://search.cpan.org/~mstrout/SQL-Abstra...SQL/Abstract.pm