$user = new User();
                $pdo = self::GetPDO();
                $sql = "select * from T_Users where UserID = ?";
                $comm = $pdo->prepare($sql);
                $comm->bindParam(1, $userID, PDO::PARAM_STR, 20);
                $comm->execute();
                $ds = $comm->fetchAll(PDO::FETCH_ASSOC);
红色那行出现错误信息:Fatal error: Call to a member function bindParam() on a non-object in D:\PHP\TEST\User.php on line 20,不知道怎么解决,我把$sql的值改成“select  * from Customer where cust_no = ?”时却可以正常运行

解决方案 »

  1.   

    php同时支持sqlite2和sqlite3, sqlite系列的函数只可以操作sqlite2库,操作sqlite3的库可以通过pdo或者SqliteDatabase类
      

  2.   

    以为两个帖子不是一个人,没看清, 会不会是数据类型的问题? 那个UserID是 varchar类型还是int类型?
      

  3.   

    我的sqlite是2.7的,我想我上面的的程序应该不存在版本方面的问题。因为它只是操作T_Users表的时侯无法访问,它能够访问当前数据库中的Customer表。
      

  4.   

    UserID是varchar,
    我把$comm-> bindParam(1,   $userID,   PDO::PARAM_STR,   20); 换成:
    $comm-> bindParam(1,   $userID);
    同样也不行呀。
      

  5.   

    我是在Qt访问SQLite3的时候,提示找不到table