问题:为什么我会收到Call to undefined function prepare()
错误?
我该如何解决?
我知道this与我的问题类似,但我不知道如何将答案应用于我的案例。
$myNull = null;
$table="test_results";
$sql = "INSERT INTO $table (instance, uid, testid, quizstart, quizend, score)
VALUES (
:instance,
:uid,
:testid,
:quizstart,
:quizend,
:score)";
try {
/*** connect to DB ***/
$dbh = new PDO("mysql:host=$hostname;dbname=$dbname", $username, $password);
$stmt = $dbh>prepare($sql); // **************ERROR HERE****************
$stmt->bindParam(':instance', $myNull, PDO::PARAM_INT);
$stmt->bindParam(':uid',$userID, PDO::PARAM_INT);
$stmt->bindParam(':testid', $tid, PDO::PARAM_STR);
$stmt->bindParam(':quizstart', $quizstart,PDO::PARAM_STR);
$stmt->bindParam(':quizend', $quizend,PDO::PARAM_STR);
$stmt->bindParam(':score', $score,PDO::PARAM_STR);
$stmt->execute();
/*** display the id of the last INSERT ***/
$lastInsertValue=$dbh->lastInsertId();
$stmt->closeCursor();
/*** close the database connection ***/
$dbh = null;
}
答案 0 :(得分:3)
您错过了-
。试试这个
$stmt = $dbh->prepare($sql);
答案 1 :(得分:1)
您使用的是大于运算符而不是箭头(->
)
$dbh>prepare($sql); //WRONG
$dbh->prepare($sql); // CORRECT