Квотирование данных MySQL запроса в PHP по сравнению с Perl
От: DmitryZhariy Украина http://zhariy.org.ua
Дата: 01.05.07 19:48
Оценка:
Бегло просмотрев справочник функций по работе с MySQL в PHP, я не обнаружил действительно удобного способа квотирования специальных символов (кавычек, обрывов строк и т.д. ) в PHP.
Я нашел функцию
string mysql_real_escape_string (string unescaped_string [, resource link_identifier])

Но, на мой взгляд ее использование при большом количестве входных данных не очень удобно.
Хотелось бы привести пример скрипта на Перл, к котором есть более удобный, на мой взгляд, способ решения этой проблемы и спросить у форумчан: есть ли подобная возможность квотирования в языке php:

Perl код:
use strict;
use DBI;

my $dbh = DBI->connect('DBI:mysql:database_name:localhost','user', 'password');
my $external_item1 = 10;
my $external_item2 = 20;
my $external_item3 = '"Hello';

# Создаем запрос. Знаки вопроса означают, что на их место будут вставленны 
# данные при выполнении функции execute
my $sth = $dbh->preare("SELECT * FROM table_name 
                        WHERE id    = ? 
                        AND   value = ?
                        AND   name  = ? ");

# А эта функция вставляет данные на место знаков вопроссов, 
# автоматически квотируя их
# Т.е. вместо первого знака вопроса вставится квотированное значение 
# $external_item1 ... вместо 3-го - $external_item3
$sth->execute($external_item1, $external_item2, $external_item3);

while (my @array = $sth->fetchrow_array()) {
    print "Получен новый столбец!\n";
}
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.