簡體   English   中英

找不到致命錯誤類

[英]Fatal Error class not found

晚安。

請原諒我的英語,我來自哥斯達黎加...

我正在使用PHP POO,但有問題。

錯誤是下一個:

致命錯誤:在第15行的/home/casa/public_html/guaria/clases/verificaSesion.php中找不到類'mysql'

我所有的.php文件都位於“ clases”文件夾中。

conexion.php

<?php
/**
* Clase de MySQL
*/
class mysql
{
    private $con;
    private $res;
    private $reg;
    public function conecta()
    {
        $con = mysqli_connect("localhost","root","casa","trabajo1");
        if (!$con) {
            echo "Error al conectar a base de datos".mysqli_error();
        }
        mysqli_query($con, "SET NAMES'utf8'");
        $this->con = $con;
    }
    public function consulta($sql)
    {
        $res = mysqli_query($this->con,$sql);
        $this->res = $res;
        return;
    }
    public function devuelve()
    {
        $reg = mysqli_fetch_assoc($this->res);
        return $reg;
    }
    public function desconecta()
    {
        mysqli_close();
    }
}
require_once 'acciones.php';
?>

這是我的verificaSesion.php文件:

<?php
require_once 'conexion.php';

/**
* Clase de Verificación de Sesión
*/
class verificaSesion
{
    public $mysql;
    public $usuario;
    public $password;
    public $direccion;
    function __construct($direccion)
    {
        $this->mysql = new mysql();
        $this->mysql->conecta();
        $this->usuario = $_COOKIE["usuario"];
        $this->password = $_COOKIE["password"];
        $this->direccion = $direccion;
    }
    public function verifica()
    {
        $res = $this->mysql->consulta("select count(*) as total from usuarios where usuario='".$this->usuario."' and password='".$this->password."'");
        $reg = $this->mysql->devuelve();
        $tot = $reg["total"];
        if ($tot == 1) {
            return 1;
        } else {
            return 2;
        }
    }
    public function obtiene()
    {
        $res = $this->mysql->consulta("select * from usuarios where usuario='".$this->usuario."'");
        $reg = $this->mysql->devuelve();
        return $reg;
    }
    public function redirecciona()
    {
        header("Location: ".$this->direccion);
    }
    public function ejecuta()
    {
        if ($this->verifica() == 1) {
            return $this->obtiene();
        } else {
            $this->redirecciona();
        }
    }
}
?>

兩個文件都在同一個文件夾中,所以我不明白問題所在...

謝謝

這樣做的原因是因為mysql是mysql連接庫的保留關鍵字。

如何解決:

只需使用其他名稱

好的,我終於使我的代碼工作了。 順便說一下,我可以創建一個名為mysql的類,因為mysql函數不是像mysqli這樣的類。 如果無法創建名為mysql的類,則將顯示如下錯誤:

致命錯誤:無法重新聲明mysql類

但這不是..

解決方案是將verificaSesion.php中的require_once更改為:

require_once 'clases/conexion.php';

我真的不明白為什么,因為兩個文件verificaSesion和conexion都在同一個文件夾中,但是它可以工作...無論如何,謝謝您的幫助!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM