我有一个表(cod,nom)但是nom字段有(')和(“)和空格。 我想使用以下代码清理所有表:
<?php
class ConexionDB extends PDO {
public function __construct () {
try {
parent:: __construct('mysql:host=localhost;dbname=xprueba;charset=utf8', 'root','key');
parent:: setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch (Exception $ex) { die ('Database is not exist'); } }
function __destruct(){
}
}
$BD = new ConexionDB();
$replace_these = ['"','\''];
$replace_with = ['',''];
$sql = "UPDATE xxx SET nom = :nom";
$sth = $BD->prepare($sql);
$nom = trim(str_replace($replace_these, $replace_with, :nom));
$sth->bindParam(':nom', $nom);
$sth->execute();
我收到此消息:Parse error: syntax error, unexpected ':' in C\:limpia4.php on line 19
我何时使用trim()
有人可以帮帮我吗?
答案 0 :(得分:1)
我假设第19行是:
$nom = trim(str_replace($replace_these, $replace_with, :nom));
因为您通过编写$nom
拼错了变量:nom
。将其更改为:
$nom = trim(str_replace($replace_these, $replace_with, $nom));
它应该有效。 BTW这个变量是什么?它未在您提供的代码中的任何位置分配。