Jump to content

Array de Classes


Carlos Rocha
 Share

Recommended Posts

Tenho uma classe de Administrador com nome, etc.. E gravo cada administrador em uma tabela no MySQL

Faço um loop no banco para ver quais Administradores tenha cadastrados e para cada administrador eu crio um objeto da Classe Administrador.

E para cada objeto desse preciso criar um Índice em um Array.

Isso é possível de alguma forma?

Será que terei que criar uma Classe para abrigar esses objetos?

 public function pesquisaAdmins() {
	 $admins = null;           

	 $string = "SELECT idAdmins, tipo, nome, login, senha, bloqueado FROM admins";

	 $registros = $this->conexao->query($string);
	 $quantasLinhas = $registros->num_rows;		
	 $contador = 0; 

	 if ($quantasLinhas > 0)
	 {
		 while (list ($idAdmins, $tipo, $nome, $login, $senha, $bloqueado) = $registros->fetch_row())
		   {

			 $admin = new Admins($tipo, $nome, $login, $senha, $bloqueado);           			 
			 $admin->setIdAdmins($idAdmins);

			 $admins = array();
			 $admin[$contador] = $admin;
			 //array_push($admins, $admin);
		   }
	 }

	 return $admins;

 }

Da forma acima só vem 1 admin e tem 6 no banco.

Edited by carcleo
Link to comment
Share on other sites

HappyHippyHippo

não vou questionar a razão da sobrecarga que andas a inventar.

a única coisa que vou dizer será:

                if ($quantasLinhas > 0)
                {
                        $admins = array();
                        while (list ($idAdmins, $tipo, $nome, $login, $senha, $bloqueado) = $registros->fetch_row())
                          {

                                $admin = new Admins($tipo, $nome, $login, $senha, $bloqueado);                                  
                                $admin->setIdAdmins($idAdmins);

//                                 $admins = array();
                                $admin[] = $admin;
                          }
                }
IRC : sim, é algo que ainda existe >> #p@p
Link to comment
Share on other sites

Assim funcionou.

Será que está melhor?

 public function pesquisaAdmins() {
	 $admins = null;           

	 $string = "SELECT idAdmins, tipo, nome, login, senha, bloqueado FROM admins";

	 $registros = $this->conexao->query($string);
	 $quantasLinhas = $registros->num_rows;	

	 if ($quantasLinhas > 0) {

		 while (list ($idAdmins, $tipo, $nome, $login, $senha, $bloqueado) = $registros->fetch_row())   {

			 $admin = new Admins($tipo, $nome, $login, $senha, $bloqueado);           			 
			 $admin->setIdAdmins($idAdmins);

			 $admins[] = $admin;
		   }
	 }

	 return $admins;

 }

Ou tens outra maneira que possas me ensinar?

Edited by carcleo
Link to comment
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
 Share

×
×
  • 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.