2011-01-27 7 views
2

Я использую sqlite_escape_string ($ str) для подготовки операторов sql для будущего использования.Звонок на неопределенную функцию sqlite_escape_string()

однако, когда я мигрировал свой код на новый сервер, он говорит:

Вызов неопределенной функции sqlite_escape_string()

кажется Sqlite и все работает на новом сервере, но у меня есть ошибки даже для sqlite_open().

В любом случае, я просто нужно избежать моего $ ул в течение SQLITE безопасного statments SQL, я серовато даже не нужно писать SQLite из PHP, так что

+0

Разница между Sqlite и Sqlite3 расширением. Вы можете сделать php -m из командной строки, чтобы увидеть все активированные расширения. – Gordon

ответ

0

Я нашел и я сам.

Это связано с моим сервером Centos 5.4, а поддержка sqlite для php не существует.

Этот же случай должен существовать и в REL5.

см 1-й и 2-й последний комментарий в ссылке ниже:

http://www.php.net/manual/en/sqlite.installation.php

Я решил его перекомпиляции мой PHP и добавил sqlite.ini файл

1

Это звучит как SQLite плагин не включен для PHP. Напишите <?=phpinfo()?> в файле .php, загрузите его на свой сервер и посмотрите, упоминается ли SQLite в загружаемых плагинах.

+0

я могу видеть Pdo_Sqlite PDO драйвер для SQLite 3.x \t включен PECL версии модуля \t 1.0.1 $ Id: pdo_sqlite.c, v 1.10.2.6 2006/01/01 12:50:12 снайпер Exp $ SQLite Библиотека \t 3.3.6 –

+0

Является ли phpinfo() в том же файле? Проверьте, есть ли в вашем скрипте и файле test phpinfo() те же настройки php.ini. – powtac

0

Вам необходимо раскомментировать расширение = php_sqlite.dll линии путем удаления с запятой прямо сейчас ваш pdo_sqlite включен и sqlite_escape_string является функцией SQLITE расширения и sqlite_pdo не будет работать недо php_sqlite включен

+0

Вы имеете в виду инвалидов? –

+0

Нет, я имею в виду, потому что он мог видеть расширение pdo, и поскольку он использует методы php_sqlite, он получает ошибки – arsalankhan

0

Для тех, кто недавно повышен до 5,4 +, обратите внимание, что PHP документы говорят, этот метод не доступен 5.4+

(PHP 5 < 5.4.0, PECL SQLite> = 1.0.0)

Таким образом, вам нужно будет вручную скомпилировать его или просмотреть PECL.

Смежные вопросы