美好的一天,
我正在运行一个博客页面,即PHP
。我使用PDO
作为连接字符串,事情很完美。
我现在最近上传到我的服务器,现在我不得不改为使用mysqli
。
我不熟悉使用此格式,因为我一直使用PDO
。
我的编码如下,有人可以协助吗?
<?php
if (isset($_POST['cmdPost']))
{
try
{
$name = $_POST['txtname'];
$subj = $_POST['txtsubject'];
$msg = $_POST['txtmessage'];
if(empty($name) || empty($subj) || empty($msg))
throw new Exception("Error - Please fill in input fields!");
$stmt = $dbh->prepare("INSERT INTO blogs VALUES (name, subject, message)");
$stmt->bind_param($name, $subj, $msg);
这是我收到错误的地方:
"Fatal error: Call to a member function bind_param() on a non-object in /home/m4230930/public_html/blog.php on line 24"
我坚持了3天,我不确定如何继续。
有人可以帮忙吗? 感谢
答案 0 :(得分:3)
更改以下行:
$stmt = $dbh->prepare("INSERT INTO blogs VALUES (name, subject, message)");
$stmt->bind_param($name, $subj, $msg);
with:
$stmt = $dbh->prepare("INSERT INTO blogs (name, subject, message) VALUES (?,?,?)");
$stmt->bind_param('sss',$name, $subj, $msg);