2

大家好,我需要 SQLite 的帮助 - PHP 中的 sqlite_escape_string()。这是一个代码:

<?php
require_once('AES/AES_Encryption.php');
require_once('AES/padCrypt.php');

$database = new PDO('sqlite:example_sqlite3.db');

$key = "bac09c63f34c9845c707228b20cac5e0";   
$iv = "1234567890123456";                    
$AES = new AES_Encryption($key, $iv);

$Col1 = '123456789qwerty';
$Col2 = 'qwerty123456789';

$encrypted_1 = sqlite_escape_string($AES->encrypt($Col1));
$encrypted_2 = sqlite_escape_string($AES->encrypt($Col2));

INSERT INTO AES_T (encrypted_1 , encrypted_2 ) VALUES ('$encrypted_1', '$encrypted_2');

echo "ENC1:" . $encrypted_1;
echo "ENC2:" . $encrypted_2;
?>

好的,这个加密在 MySQL 中工作mysql_real_escape_string()。使用sqlite_escape_string()它会报告:致命错误:调用未定义的函数 sqlite_escape_string()。AES PHP 加密:对于加密我使用这个: http: //www.coderelic.com/2011/10/aes-256-encryption-with-php/

我检查了 phpinfo() 并启用了:

  • PDO 驱动程序:mysql
  • sqlite 已启用
  • SQLite 3.x 的 PDO 驱动程序已启用
  • SQLite 库 3.7.7.1 已启用
  • SQLite3 支持 SQLite3 模块版本 0.7 已启用
  • SQLite 库 3.7.7.1 已启用

我正在使用 WAMP Server Apache 版本 2.22.22 和 PHP 版本 5.4.3,我尝试使用 Zend Server 以及常规的 Apache 和 PHP 安装,但出现相同的错误。请在这方面需要帮助。

4

1 回答 1

5

sqlite_escape_string 在 php 5.4 中已弃用。转义数据库字符串的最佳方法是使用 PDO,如在 PHP5 中为 SQLite3 转义字符串所建议的

于 2013-05-30T14:25:45.383 回答