在使用mySQL的PHP中,带有命名占位符的准备语句出错
我用这个代码在我的网页上得到这些错误在使用mySQL的PHP中,带有命名占位符的准备语句出错,php,mysql,sql,Php,Mysql,Sql,我用这个代码在我的网页上得到这些错误 Notice: Undefined variable: dbh in /home/danu2_cj3/public_html/lists.php on line 14 Fatal error: Call to a member function prepare() on a non-object in /home/danu2_cj3/public_html/lists.php on line 14 <?php /* Execute a prepar
Notice: Undefined variable: dbh in /home/danu2_cj3/public_html/lists.php on line 14
Fatal error: Call to a member function prepare() on a non-object in /home/danu2_cj3/public_html/lists.php on line 14
<?php
/* Execute a prepared statement by binding PHP variables */
$member = $_SESSION['SESS_MEMBER_ID'];
$sth = $dbh->prepare('SELECT name
FROM lists
WHERE member_id = :member_id ');
$sth->bindValue(':member_id', $member, PDO::PARAM_INT);
$sth->execute();
?>
这是我正在使用的php代码,第14行是代码中的第4行
Notice: Undefined variable: dbh in /home/danu2_cj3/public_html/lists.php on line 14
Fatal error: Call to a member function prepare() on a non-object in /home/danu2_cj3/public_html/lists.php on line 14
<?php
/* Execute a prepared statement by binding PHP variables */
$member = $_SESSION['SESS_MEMBER_ID'];
$sth = $dbh->prepare('SELECT name
FROM lists
WHERE member_id = :member_id ');
$sth->bindValue(':member_id', $member, PDO::PARAM_INT);
$sth->execute();
?>
我试图显示一组行的数组,其中这些行中的一个字段应该与登录会话的人的成员id匹配
以下是页面的全部代码(top.php和bottom.php只是布局页面)
我的个人资料
|
请选择要查看/删除的列表
这是我的connect.php文件
<?php
$username = "mydb";
$password = "mydb";
$hostname = "host";
//connection to the database
$dbh = mysql_connect($hostname, $username, $password)
or die("Unable to connect to database");
//select a database to work with
$selected = mysql_select_db("mydb",$dbh)
or die("Could not select database");
?>
您可能应该向数据库添加
连接
,或者检查在connect.php中是否正确设置了连接
try
{
$dbh = new PDO($dsn, $user, $password);
}
catch (PDOException $e)
{
echo 'Connection failed: ' . $e->getMessage();
}
从该错误消息中,您尚未定义
$dbh
。你在哪里初始化它?我真的不知道,我应该在哪里初始化它?我该怎么做呢?你可能应该把你的全部代码添加到你的问题中——这个错误是由一些没有包含在这里的东西引起的。我现在已经在那里编辑了它,以显示其余的部分!您需要检查connect.php。应该将$dbh
设置为数据库连接,而不是。