Ir para conteúdo
Fórum Script Brasil
  • 0

Erro Classe Conexao


david.lyonnais

Pergunta

Criei essa simples classe para conexão ao banco de dados ,so que eu não sei porque ta aparecendo esses dois erros.

<?php
class Conexao{
        //Variaveis
        private $host = 'localhost';
        private $usuario = 'xxx';
        private $senha = 'xxx';
        //Link Conexão
        private $con;
        
        //Construir conexao
        function __construct($banco){
            $this->con = mysql_connect($this->host,$this->usuario,$this->senha);    
            if(!$this->con){
                echo "Erro Localhost";
                exit;
            }else{
                $bd = mysql_select_db($banco,$this->con);
                
                if(!$bd){
                    echo "Erro Banco de Dados";
                    exit;
                }
            }
        }
        //Mysql_Query
        public function query($sql){
            $rs = mysql_query($sql,$this->con) or die(mysql_error());
            return $rs;
        }
        
        //Destruir conexão
        function __destruct(){
            mysql_close($this->con);    
        }
}
?>

Warning: mysql_query(): supplied argument is not a valid MySQL-Link resource in C:\Arquivos de programas\Apache Software Foundation\Apache2.2\htdocs\Includes\conexao.class.php on line 27

Warning: mysql_close(): supplied argument is not a valid MySQL-Link resource in C:\Arquivos de programas\Apache Software Foundation\Apache2.2\htdocs\Includes\conexao.class.php on line 33

Lendo eles pensei que fosse o link da conexão mais não vejo nada de errado neles.

Editado por david.lyonnais
Link para o comentário
Compartilhar em outros sites

7 respostass a esta questão

Posts Recomendados

  • 0

Seu problema com certeza está no link da conexão.

Tenta isto.

$this->con = mysql_connect($this->host,$this->usuario,$this->senha) or die(mysql_error());

Veja se retorna alguma mensagem de erro...

Utilize a função is_resource() para verificar se a conexão está correta também.

Livre na WEB

http://www.livrenaweb.com.br/

8xP.jpg

Link para o comentário
Compartilhar em outros sites

  • 0

Adiciona

private $banco = 'xxx';
E muda:
$bd = mysql_select_db($this->banco,$this->con);
Ficaria assim
<?php
class Conexao{
        //Variaveis
        private $host = 'localhost';
        private $usuario = 'xxxxx';
        private $senha = 'xxx';
        private $banco = 'xxxx';
        //Link Conexão
        private $con;
        
        //Construir conexao
        function __construct(){
            $this->con = mysql_connect($this->host,$this->usuario,$this->senha);    
            if(!$this->con){
                echo "Erro Localhost";
                exit;
            }else{
                $bd = mysql_select_db($this->banco,$this->con);
                if(!$bd){
                    echo "Erro Banco de Dados";
                    exit;
                }
            }
        }
        //Mysql_Query
        public function query($sql){
            $rs = mysql_query($sql,$this->con) or die(mysql_error());
            return $rs;
        }
        
        //Destruir conexão
        function __destruct(){
            mysql_close($this->con);    
        }
}
?>

Editado por Jefferson Oliveira
Link para o comentário
Compartilhar em outros sites

  • 0

@Jefferson

Fiz as mudanças que você sugeriu o erro persiste..

@Livre na Web

Tabm tenho certeza que o erro esta ali mais não sei identificar qual é.

@Eu tive que da uma parada nesse carrinho virtual,pois meu amigo fez um desafio, ele disse que não conseguiria fazer um Jornal Virtual, ou seja ,sistema de noticias só que ele pedio que fosse orientado a objetos, como não manjo essas coisas todas , topei o desafio e vo me aprofundar em OO.

Pode fechar!!!

Link para o comentário
Compartilhar em outros sites

  • 0

Cara

Já que você quer se aprofundar em OO.

Faça então conexões com banco de dados utilizando PDO.

http://www.php.net/PDO

Dá uma estudada legal

Tire duas horinhas para ler a documentação e você vai ver que você já vai pegar rapidinho e você vai fazer algo bacana.

PDO é muito poderoso, e inclusive, tem outros membros do forum aqui que usam e vão te ajudar.

Livre na WEB

http://www.livrenaweb.com.br/

8xP.jpg

Link para o comentário
Compartilhar em outros sites

  • 0

Eu já dei uma lida sobre PDO..

Mais eu prefiro,sem querer desmerecer o conselho, tudo do meu jeito ,o jeito dificil mesmo pra aprender tudo.

Falando em conexao ao banco de dados usando class eu criei uma que agr funcionou mudei tudo praticamente,criei ela pra o sistema de noticias,mas ela esta em construção ainda essa class,to adicionando os metodos de acordo com que eu vo prescisando.

Dai to com uma dúvida no codigo... vo criar um tópico com a duvida..

Até

Editado por david.lyonnais
Link para o comentário
Compartilhar em outros sites

  • 0

fala ae david,

conseguiu acertar sua conexao?... caso não tenha conseguido... tente passar os valores no __construct() para ver se funciona, veja:

não sei de onde está vindo a variável $banco... mas tenta fazer como o nosso colega falou:

private $banco = 'xxxx';

então ficaria assim:

//Construir conexao

function __construct($host,$usuario,$senha,$banco){

...........

}

vlw

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...