Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/three.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP&;SQLite-报价与报价;插入时的撇号错误_Php_Sqlite - Fatal编程技术网

PHP&;SQLite-报价与报价;插入时的撇号错误

PHP&;SQLite-报价与报价;插入时的撇号错误,php,sqlite,Php,Sqlite,嗨,我在插入sqlite时遇到了一个大问题 $string='您好,我做得很好,价格是$1.00加上[$3.00]邮费' 如何将其插入sqlite而不出错?对于任何数据库,在sql查询中使用变量时,必须始终使用转义函数或参数绑定。对于sqlite,它是 SQLite3示例: $stmt = $handle->prepare('insert into table (name) values (:name)'); $stmt->bindValue(':name', $string, SQ

嗨,我在插入sqlite时遇到了一个大问题

$string='您好,我做得很好,价格是$1.00加上[$3.00]邮费'


如何将其插入sqlite而不出错?

对于任何数据库,在sql查询中使用变量时,必须始终使用转义函数或参数绑定。对于sqlite,它是

SQLite3示例:

$stmt = $handle->prepare('insert into table (name) values (:name)');
$stmt->bindValue(':name', $string, SQLITE3_TEXT);
$stmt->execute();

但是我如何编写它,这样它在插入时不会给我错误,它不会通过$string,因为它全部打开,我如何关闭它,以便它准备好插入?您编辑的文本显示此错误致命错误:调用未定义的函数sqlite\u escape\u string()如何创建连接?函数sqlite($switch,$filename,$query){if(!class_exists('SQLite3'))die(“SQLite 3不受支持”);$handle=new SQLite3($filename,0666);if($switch==1){$handle->query($query);return$handle->lastInsertRowid();}else{$result=$handle->query($query);if(!$result){echo$query.
”;exit;}return$result;#return$handle->->query($query)}//$return$handle->exec($query);#在select上不起作用。}我读到prepare在where querys上失败。因此,我使用了转义字符串方法,我将编辑您的问题以将其放置在那里,但效果非常好。
$stmt = $handle->prepare('insert into table (name) values (:name)');
$stmt->bindValue(':name', $string, SQLITE3_TEXT);
$stmt->execute();