Php MySQL数据库连接类,函数不返回任何结果
我目前正在做一个小项目,看在上帝的份上,我无法让这个PHP类正常工作 问题是,Php MySQL数据库连接类,函数不返回任何结果,php,mysql,database,class,mysqli,Php,Mysql,Database,Class,Mysqli,我目前正在做一个小项目,看在上帝的份上,我无法让这个PHP类正常工作 问题是,doQuery在这里键入和插入命令或任何其他命令时不返回任何内容,也不修改数据库,即使从类中调用,也始终返回false class CONN { private $connection; public function __construct() { $this->connection = new mysqli($address, $user, $pass, $db);
doQuery
在这里键入和插入命令或任何其他命令时不返回任何内容,也不修改数据库,即使从类中调用,也始终返回false
class CONN {
private $connection;
public function __construct() {
$this->connection = new mysqli($address, $user, $pass, $db);
if ($this->connection->connect_error) {
// Throw error here
} else {
$this->doQuery("SET NAMES 'utf8'");
}
}
public function doQuery($query){
return $this->connection->query($this->connection->real_escape_string($query));
}
}
已解决
真正的_escape_字符串甚至转义了
”
,因此查询无法工作。我认为您的代码永远不会这样工作,我看到的主要问题是以下代码:
$this->connection = new mysqli($address, $user, $pass, $db);
$adress、$user、$pass、$db从哪里来?可能您错过了构造函数参数。我认为您的代码永远不会这样工作,我看到的主要问题是以下代码:
$this->connection = new mysqli($address, $user, $pass, $db);
$adress、$user、$pass、$db从哪里来?可能您错过了构造函数参数。我认为您的代码永远不会这样工作,我看到的主要问题是以下代码:
$this->connection = new mysqli($address, $user, $pass, $db);
$adress、$user、$pass、$db从哪里来?可能您错过了构造函数参数。我认为您的代码永远不会这样工作,我看到的主要问题是以下代码:
$this->connection = new mysqli($address, $user, $pass, $db);
$adress、$user、$pass、$db从哪里来?可能您错过了构造函数参数。您需要创建/提供其他类参数。创建对象时,类构造函数需要这些值来建立连接。因此:
class Con
{
private $address;
private $username;
private $password;
private $database;
public function __construct($address, $username, $password,$database)
{
$this->address = $address;
$this->username = $username;
$this->password = $password;
$this->database = $database;
}
public function connect()
{
$con = mysqli_connect($this->address, $this->username, $this->password, $this->database);
return $con;
}
}
$conobject = new Con("localhost","root","","mybase");
$convar = $conobject->connect();
您需要创建/提供额外的类参数。创建对象时,类构造函数需要这些值来建立连接。因此:
class Con
{
private $address;
private $username;
private $password;
private $database;
public function __construct($address, $username, $password,$database)
{
$this->address = $address;
$this->username = $username;
$this->password = $password;
$this->database = $database;
}
public function connect()
{
$con = mysqli_connect($this->address, $this->username, $this->password, $this->database);
return $con;
}
}
$conobject = new Con("localhost","root","","mybase");
$convar = $conobject->connect();
您需要创建/提供额外的类参数。创建对象时,类构造函数需要这些值来建立连接。因此:
class Con
{
private $address;
private $username;
private $password;
private $database;
public function __construct($address, $username, $password,$database)
{
$this->address = $address;
$this->username = $username;
$this->password = $password;
$this->database = $database;
}
public function connect()
{
$con = mysqli_connect($this->address, $this->username, $this->password, $this->database);
return $con;
}
}
$conobject = new Con("localhost","root","","mybase");
$convar = $conobject->connect();
您需要创建/提供额外的类参数。创建对象时,类构造函数需要这些值来建立连接。因此:
class Con
{
private $address;
private $username;
private $password;
private $database;
public function __construct($address, $username, $password,$database)
{
$this->address = $address;
$this->username = $username;
$this->password = $password;
$this->database = $database;
}
public function connect()
{
$con = mysqli_connect($this->address, $this->username, $this->password, $this->database);
return $con;
}
}
$conobject = new Con("localhost","root","","mybase");
$convar = $conobject->connect();
使用
real\u escape\u string
仅用于转义变量(通常由用户提交),例如
不要逃避整个查询
public function doQuery($query){
return $this->connection->query($query);
}
使用
real\u escape\u string
仅用于转义变量(通常由用户提交),例如
不要逃避整个查询
public function doQuery($query){
return $this->connection->query($query);
}
使用
real\u escape\u string
仅用于转义变量(通常由用户提交),例如
不要逃避整个查询
public function doQuery($query){
return $this->connection->query($query);
}
使用
real\u escape\u string
仅用于转义变量(通常由用户提交),例如
不要逃避整个查询
public function doQuery($query){
return $this->connection->query($query);
}
如果结果为
false
则查询错误并记录,而不是立即返回。这里本身没有足够的信息。您应该只对SQL查询中使用的变量使用real\u escape\u字符串
。我认为utf8
周围的引号被转义,因此查询无效。是否发出任何错误?错误日志($query)代码> <代码> doQuyIE()>代码>您应该考虑添加<代码> ECHOR$ $ ->连接->错误;<代码>内部if条件为if($this->connection->error\u no){
如果查询失败,您将得到确切的消息。您可以将该错误粘贴到此处,这样可以获得线索。错误日志
输出1
而不是立即返回,如果结果为false
则查询错误并记录。此处本身没有足够的信息。您应该只使用真实的转义字符串< SQL >查询中使用的变量。我认为“<代码> UTF8/CODE >周围的引文正在逃逸,因此查询无效。是否存在任何错误?<代码> Error日志($Quy);<代码>内<代码> DoQuyIE()/>代码>您应考虑添加<代码> ECHO $此->连接>错误;($this->连接->错误号){
如果查询失败,您将得到确切的消息。您可以将该错误粘贴到此处,这样可以获得线索。错误日志
输出1
而不是立即返回,如果结果为false
则查询错误并记录。此处本身没有足够的信息。您应该只使用真实的转义字符串< SQL >查询中使用的变量。我认为“<代码> UTF8/CODE >周围的引文正在逃逸,因此查询无效。是否存在任何错误?<代码> Error日志($Quy);<代码>内<代码> DoQuyIE()/>代码>您应考虑添加<代码> ECHO $此->连接>错误;($this->连接->错误号){
如果查询失败,您将得到确切的消息。您可以将该错误粘贴到此处,这样可以获得线索。错误日志
输出1
而不是立即返回,如果结果为false
则查询错误并记录。此处本身没有足够的信息。您应该只使用真实的转义字符串< SQL >查询中使用的变量。我认为“<代码> UTF8/CODE >周围的引文正在逃逸,因此查询无效。是否存在任何错误?<代码> Error日志($Quy);<代码>内<代码> DoQuyIE()/>代码>您应考虑添加<代码> ECHO $此->连接>错误;($this->connection->error\u no){
如果查询失败,您将得到确切的消息。您可以将错误粘贴到此处,这样可以获得线索。error\u log
outputs1
我刚刚用varsI替换了我的信息刚刚用varsI替换了我的信息刚刚用varsI替换了我的信息刚刚用vars替换了我的信息