删除整个表php pdo的奇怪字符

时间:2016-06-08 21:59:54

标签: php mysql pdo

我有一个表(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() 有人可以帮帮我吗?

1 个答案:

答案 0 :(得分:1)

我假设第19行是:

$nom = trim(str_replace($replace_these, $replace_with, :nom));

因为您通过编写$nom拼错了变量:nom。将其更改为:

$nom = trim(str_replace($replace_these, $replace_with, $nom));

它应该有效。 BTW这个变量是什么?它未在您提供的代码中的任何位置分配。