【问题标题】:PDO bindParam() fatal errorPDO bindParam() 致命错误
【发布时间】:2014-10-09 09:41:11
【问题描述】:

我正在努力学习 PDO,现在我写了一小段代码,但它给了我一个致命的错误:

致命错误:在...中的非对象上调用成员函数 bindparam()

$con =  new mysqli("127.0.0.1","root","","csvdangercheck");
$query = $con->prepare("INSERT INTO `testtabel` (`ID`, `var1`, `var2`) VALUES (:ID , :var1, :var2);");
$query->bindParam(':ID', $id);
$query->bindParam(':var1',$val1);
$query->bindParam(':var2',$val2);
$query->execute();

我尝试使用 print_r($con->errorInfo()); 但这返回了以下内容:

致命错误:在...中调用未定义的方法mysqli::errorInfo()

谁能告诉我这里缺少什么?

【问题讨论】:

  • 您正在混合使用 mysqli 和 pdo。选择一个 :) 我建议您选择 PDO。
  • 啊,解释了很多,谢谢,我会查找更多信息! :)
  • @Fluffeh 我现在可以工作了:D 谢谢,另一个问题.. 它现在显示它放入数据库中的数组,有什么方法可以隐藏它吗?
  • Mysqli 不会自己“显示”一个数组。我猜您在尝试调试代码时在某处有 print_r 或 var_dump?
  • 哦,是的,它是我在问题中所说的 print_r,你是英雄! :)

标签: php mysql pdo


【解决方案1】:

就像 Fluffeh 说的,你正在混淆 PDO 和 mysqli,试试这个:

$con =  new PDO('mysql:host=127.0.0.1;dbname=csvdangercheck', 'root', '');

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-09-29
    • 2012-02-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-24
    相关资源
    最近更新 更多