【问题标题】:Fatal error: Cannot redeclare class connect致命错误:无法重新声明类连接
【发布时间】:2019-01-05 22:46:25
【问题描述】:

当我尝试创建一个类来连接数据库时 我收到了这个错误

致命错误:无法在第 11 行的 C:\xampp\htdocs\project\include\config.php 中重新声明类连接

我创建了一个带有函数 connect with mysqli vars 的类, 但我没有得到没有错误的好结果。

config.php

<?php
if(!isset($_SESSION))
{
session_id("hassan");
session_start();

}
class connect {
var  $dbhost="localhost";
var $dbuser="root";
var $dbpass="";
var $dbname="projects";
var $dbport=3306;
var $mycon;
//error_reporting(0);
function contact(){
$con1=mysqli_connect($this->dbhost,$this->dbuser,$this->dbpass,$this->dbname,$this->dbport);
if(!$con1)
include_once "error.html";
mysqli_query($con1,"set names 'utf8'");

if($con1){
include_once dirname(__DIR__) ."/template/title.php";
$this->mycon = $con;
}
return $this->mycon;

}
}
$con= new connect();
$con->contact();
?>
<?php 

?>

有什么办法解决吗? 我尝试了很多方法..

【问题讨论】:

  • 我们需要知道第 11 行是什么以及哪个文件。您发布的内容不支持该问题/错误。
  • 第 11 行类连接 {
  • 第 11 行类连接 { @FunkFortyNiner
  • 您包含该文件两次。不要。
  • @ÁlvaroGonzález 它仍然给我一个错误

标签: php class mysqli


【解决方案1】:

您包含该文件两次,这是一个错误。直接的解决方法是这样做:

if (class_exists("connect")) {
    //your code here
}

因此您的类将被声明一次,并且在下一次包含该文件时,它将被跳过。但在您完成此修复后,您将需要查看包含或需要此文件的方式、位置和原因。确保您只包含或要求它一次。 include_oncerequire_once 是你的朋友。当您修复包含内容时,您可以避免使用 if I have given around your code。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-10-17
    • 2014-11-07
    • 2012-07-31
    • 2016-03-25
    • 2017-01-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多