Jump to content
skiller10

Classes

Recommended Posts

skiller10

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.."

Share this post


Link to post
Share on other sites
HappyHippyHippo

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

Share this post


Link to post
Share on other sites
skiller10

Problema resolvido, obrigado :P


"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.."

Share this post


Link to post
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.