[英]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.