skiller10 Posted April 4, 2012 Report Share Posted April 4, 2012 Boas, Estou a desenvolver uma aplicação web em PHP mas deparei-me com um problema/bug (não sei o que lhe chamar). Estou a começar a utilizar classes em PHP e comecei por criar uma classe de login. Na classe de login, quando tento conectar à base de dados utilizando variáveis que tenho declaradas num ficheiro à parte ele não reconhece as variáveis e falha a conexão: $bd = new mysqli($CONFIG['bd_servidor'], $CONFIG['bd_utilizador'], $CONFIG['bd_senha'], $CONFIG['bd_nome']); No entanto se eu escrever directamente os dados de acesso à bd em vez de usar as variáveis já funciona. Será por estar a fazer a conexão à base de dados dentro de uma função pertencente a uma classe? Cumprimentos, skiller10 "Eu acredito que a vida está constantemente nos testando em nosso nível de confiança, e a vida tem grande recompensa reservada àqueles que demonstram uma confiança sem fim para agir até conseguir. Este nível de resolução pode mover montanhas, mas ele tem de ser constante e consistente. Tão simples quanto isso possa soar, ainda é o denominador comum que separa aqueles que vivem seus sonhos dos que vivem simplesmente.." Link to comment Share on other sites More sharing options...
HappyHippyHippo Posted April 4, 2012 Report Share Posted April 4, 2012 as variáveis declaradas no segundo ficheiro presumo que sejam globais, não estão directamente asseciveis dentro das funções da classe tens três soluções: 1ª - adicionas parâmetros ao construtor da classe guardando assim os valores das variáveis globais 2ª - adicionas parâmetros á chamada da classe que abre a ligação ao servidor 3ª - declaras dentro da função a existência das variáveis globais através da palavra reservada "global", exemplo: ... public function xpto() { global $variavel_global; } ... IRC : sim, é algo que ainda existe >> #p@p Portugol Plus Link to comment Share on other sites More sharing options...
skiller10 Posted April 4, 2012 Author Report Share Posted April 4, 2012 Problema resolvido, obrigado 😛 "Eu acredito que a vida está constantemente nos testando em nosso nível de confiança, e a vida tem grande recompensa reservada àqueles que demonstram uma confiança sem fim para agir até conseguir. Este nível de resolução pode mover montanhas, mas ele tem de ser constante e consistente. Tão simples quanto isso possa soar, ainda é o denominador comum que separa aqueles que vivem seus sonhos dos que vivem simplesmente.." Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now