php - 在我的类里面使用 pdo php

标签 php pdo

我在类里面使用 pdo php

<?php 
class User 
 {
   private $db;
   public function __construct($host, $user, $pass, $db)
   {
    try
     {
      $this->db = new PDO("mysql:host=$host;dbname=$db", $user, $pass); 

     }
    catch (Exception $e)
     {
      die('Error : ' . $e->getMessage());
     }
   } 
  public function modUser($uid, $email)
   {
    $query = $this->db->exec("UPDATE Users SET  Email =:email  WHERE Id_User =:uid");
         $query->bindValue(':email', $email, PDO::PARAM_STR);   
   }
}
?>

当我这样使用用户类时:

$user = new User('localhost','tester','0000','Agency);

用的不错,就是用配置文件连接数据库写的时候有问题

$user = new User($host, $user, $pass, $db);

我得到一个错误:

<b>Warning</b>:  PDO::__construct() expects parameter 2 to be string, object given in <b>C:\wamp\www\new_template-latest\new_template\classes\class.User.php</b> on line <b>13</b><br />
<br />
<b>Fatal error</b>:  Call to a member function exec() on a non-object in <b>C:\wamp\www\new_template-latest\new_template\classes\class.User.php</b> on line <b>140</b><br />

最佳答案

您正在尝试将 new User 对象分配给 PDO 参数。您需要为您的 User 对象选择一个新的变量名称,或者为您的 $user 数据库配置变量选择一个新名称。

关于php - 在我的类里面使用 pdo php,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6626443/

相关文章:

PHP JSON 到 JavaScript 数组

php - 使用php 5秒将数据保存到MySQL

php pdo 每隔一个元素红色

mysql - 使用 mySQL 从两个差异表中删除行

symfony - 返回oci错误号?

php - MySQL where 子句中的一个或多个参数

php - Elasticsearch过滤器中至少一个嵌套值大于零

javascript - JQuery 自动完成显示名称并使用 php 和 mysql 维护 id

PHP - Shell_exec 和 exec 在运行时返回 false

php - 为什么我会收到 HY093 错误 [PDO]