警告使用mysqli和php类

时间:2014-05-09 08:55:45

标签: php mysqli

我收到以下警告

Warning: mysqli::mysqli(): in E:\xampp\htdocs\control\validate.php on line 28

使用以下代码

class Validator
{
    private $username;
    private $password;
    private $port;
    private $IP;
    private $database;

    private $mysqli;

    public function __construct()
    {
        $this->username = "root";
        $this->password = "root";
        $this->port = 3006;
        $this->IP = "localhost";
        $this->database = "users";
    }

    private function connect()
    {
        $this->mysqli = new mysqli($this->IP, $this->username, $this->password, $this->database, $this->port); //error here

        if( $this->mysqli->connect_errno )
            return false;
        else
            return true;
    }
    public function validateUser( $ID, $PWD )
    {
        if( !$this->connect() )
            redirect("login.php?error=mysqli_cant_connect");
    }
}

我正在调用来自validateUser的connect(),如此

$validator = new Validator;
$validator->validateUser( $_POST["id"], $_POST["pass"]);

我在互联网上看起来既高又低,我能找到的每一个帖子都无法得到答案,有什么帮助吗?我还是PHP类和mysqli的新手,之前我使用了一些mysql扩展,它在我当前的设置上运行得很好。

1 个答案:

答案 0 :(得分:0)

我没有测试过这个,但它可能与端口是字符串值而不是int有关。查看用户对官方文档的评论。 http://www.php.net/manual/en/mysqli.construct.php

尝试将端口转换为int。