Problema em Classe de Conexao Com MySQL
Aew povo
to me arriscando aqui com oop
mais to me ferrando nessa classe... :///
Fui seguindo o exemplo do fabyo e seguindo outros exemplo
coloquei tudo no liquitificador e deu nisso....
so que ta sempre dando esse erro...
mais nao to encontrando nada de errado na linha que o erro é disparado
o erro é este:
Fatal error: Using $this when not in object context in C:\Arquivos de programas\Apache Group\Apache2\htdocs\loja\forum.php on line 37
E o código é este
<?phpclass Conexao extends Erro_Sql { var $servidor = "localhost"; var $user = "root"; var $pass = ""; var $banco = "wloja"; var $mysqli; public function Abrir() { $this->mysqli = new mysqli($this->servidor, $this->user, $this->pass, $this->banco); // Check Connect if (@mysqli_connect_errno()) { $this->Gravar_Conn(); return false; } } public function Fechar() { $this->mysqli->close(); } } // Classe de execução de comandos em MySQLI ...class Comando extends Erro_Sql { public function Checa_Query() { if (@mysqli_errno()) { $this->Gravar_Query(); exit(); } } public function Executar($sql) { $con = new Conexao(); $con->Abrir(); $query = $con->mysqli->query($sql); $this->Checa_Query(); // Essa é a linha do erro $con->Fechar(); return $query; } } // Classe para log de erros na execução de querys em SQLclass Erro_Sql { var $log_erro = true; var $log_handle = "log_sql_error.php"; var $log_data_hora = ""; var $log_ip = ""; public function Abrir_Log() { $handle = @fopen($this->log_handle, 'ab'); } public function Fechar_Log() { @fclose($handle); } public function Gravar_Conn() { if ($this->log_erro) { $this->log_data_hora = date("F j, Y, H:i:s"); $this->log_ip = $_SERVER['REMOTE_ADDR']; $this->Abrir_log(); @fwrite($handle, "$this->log_data_hora - $this->log_ip - @mysqli_connect_error()\r\n"); $this->Fechar_Log(); } } public function Gravar_Query() { if ($this->log_erro) { $this->log_data_hora = date("F j, Y, H:i:s"); $this->log_ip = $_SERVER['REMOTE_ADDR']; $this->Abrir_log(); @fwrite($handle, "$this->log_data_hora - $this->log_ip - @mysqli_error()\r\n"); $this->Fechar_Log(); } } } ?>agradeço desde já ae qualquer ajuda \o/
so pra consta... to usando isso pra testa a classe
<?phpinclude("sqli.php");$exec_sql = Comando::Executar("SELECT * FROM erros");while ($fetch = mysqli_fetch_array($exec_sql)) { echo $fetch['descricao_erro']; echo "<br />";} ?>Discussão (15)
Carregando comentários...