Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/62.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在使用mySQL的PHP中,带有命名占位符的准备语句出错_Php_Mysql_Sql - Fatal编程技术网

在使用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
设置为数据库连接,而不是。