skiller10 Posted April 4, 2012 at 04:33 PM Report #447528 Posted April 4, 2012 at 04:33 PM 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.."
HappyHippyHippo Posted April 4, 2012 at 04:45 PM Report #447532 Posted April 4, 2012 at 04:45 PM 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
skiller10 Posted April 4, 2012 at 06:30 PM Author Report #447579 Posted April 4, 2012 at 06:30 PM 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.."
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