简体   繁体   English

如何在PHP类中使用mysqli_query?

[英]How can I use mysqli_query inside PHP class?

How can i use $connect variable inside User class with out sending $connect as parameter or defines global $connect inside User class? 如何在User类中使用$connect变量而不发送$connect作为参数或在User类中定义global $connect

And I want to create only one connection is 我只想创建一个连接是

$connect = mysqli_connect('localhost', 'root', '1234', 'mydatabase');

The error 错误

Warning: mysqli_query() expects parameter 1 to be mysqli, null given in D:\\xampp\\htdocs\\mateocode\\index.php on line 9 警告: mysqli_query()期望参数1为mysqli,在第9行的 D:\\ xampp \\ htdocs \\ mateocode \\ index.php中给出null

Example code 范例程式码

<?php
    class User {    
        public $id;
        public $username;
        function __construct($user_id)
        {   
        $sql = "select id, username from user where id = '$user_id' limit 1";

        $result = mysqli_query($connect, $sql);    
        if(!$result) return false;

        if(mysqli_num_rows($result)>0){
            $data = mysqli_fetch_assoc($result);
            $this->id = $data['id'];
            $this->username = $data['username'];
        }else{ 
            return false; 
        }   
    }
}

$connect = mysqli_connect('localhost', 'root', '1234', 'mydatabase');

if($objUser = new User(1))
    echo $objUser->username;
else 
    echo 'There was an error or user not found!'; 

Try with - 尝试-

<?php
    class User {    
        public $id;
        public $username;
        function __construct($user_id, $connect)
        {   
        $sql = "select id, username from user where id = '$user_id' limit 1";

        $result = mysqli_query($connect, $sql);    
        if(!$result) return false;

        if(mysqli_num_rows($result)>0){
            $data = mysqli_fetch_assoc($result);
            $this->id = $data['id'];
            $this->username = $data['username'];
        }else{ 
            return false; 
        }   
    }
}

$connect = mysqli_connect('localhost', 'root', '1234', 'mydatabase');

if($objUser = new User(1, $connect))
    echo $objUser->username;
else 
    echo 'There was an error or user not found!';

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM