php - 面向对象的数据库连接

标签 php mysql mysqli

我正在尝试连接到我参加的类(class)的本地主机。我无法解决我遇到的这些错误。有人可以帮忙吗?这是代码。

class mymysqli {
    public $db;
    function connectdb ($hostname, $database, $mysqli_login, $mysqli_password){
        $db=mysqli_connect ($hostname, $mysqli_login, $mysqli_password) or die     ('There is an issue');
        mysqli_select_db($database, 'conectdb');
        return $db;
    }
    function selectRows ($query){
        $resultSet=mysqli_query($query);
        if(mysqli_num_rows($resultSet) > 0){
            return $resultSet;
        }
        else{
            return false;
        }
    }
}

$DBConnect = new mymysqli();
$db=$DBConnect->connectdb("localhost","nwtip","root","");
if($db){
    $SQL = "SELECT color FROM colors ORDER BY color";
    $rs = $DBConnect -> selectRows($SQL);
    if ($rs){
        $intcount=0;
        while(mysqli_fetch_row($rs)){
            echo mysqli_result($rs,$intcount,"color")."<br>";
            $intcount++;
        }
    }
}

这些是错误 警告:mysqli_select_db() 期望参数 1 为 mysqli,第 10 行 C:\wamp\www\inclass.php 中给出的字符串

警告:mysqli_query() 需要至少 2 个参数,其中 1 个在 C:\wamp\www\inclass.php 第 14 行给出

警告:mysqli_num_rows() 期望参数 1 为 mysqli_result,第 15 行 C:\wamp\www\inclass.php 中给出的 null

最佳答案

$db=mysqli_connect ($hostname, $mysqli_login, $mysqli_password) or die 

由于范围的原因,$db 未被首先设置

mysqli_select_db($database, 'conectdb'); 

应该阅读

mysqli_select_db($db, 'conectdb'); 

关于php - 面向对象的数据库连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29243079/

相关文章:

php - 将数据库条目分组到动态 HTML 表中

PHP - 如何修改深层嵌套的关联数组?

javascript - 在模态窗口中使用ID?

mysql - 从本地软件将数据导入远程 MySQL 的最佳文件格式

php - mysql 选择数组中的位置 (php, mysql)

php - 仅使用一个php文件的php mysql多因素查询

php - 在没有匹配行的情况下,MySQLi 查询返回值

php - 将文件上传到Linux服务器根文件夹以外的文件夹?

php - 使用单独的Where条件从多个表中选择多个列

android - 如何列出要存储在服务器上的歌曲详细信息