致命错误:在非对象上调用成员函数prepare()

时间:2013-06-01 04:51:16

标签: php mysql pdo prepare

问题是为什么这是一个非对象。数据库已成功连接,表格和列都在那里。

这是我的代码。

<?php
$config['db'] = array(
    'host'      => 'localhost',
    'username'  => 'root',
    'password'  => '',
    'dbname'    => 'inb271assignment'
);

$pdo = new PDO('mysql:host=' . $config['db']['host'] . '; dbname=' . $config['db']['dbname'], $config['db']['username'], $config['db']['password']);

//New Data
$username = 'albert';
$password = 'ben';

$query = "INSERT INTO members (Username, Password) VALUES (:username, :password)";
$q = $conn->prepare($query);
$q->execute(array(':username' => $username,
                  ':password' => $password));

?>

这一行给出了错误。

$q = $conn->prepare($query);

感谢。

1 个答案:

答案 0 :(得分:2)

错误是您声明PDO连接对象为$pdo并且您正在使用$conn上的准备工作。

$q = $pdo->prepare($query);