Neste artigo mostro como criar uma classe para se conectar e executar consultas a um banco de dados utilizando PHP.
Desta forma podemos programar de forma fácil e organizando nosso código em funções e classes.
1a etapa Vamos montar uma classe chamada querys: class querys { var $ip = "localhost"; var $user = "root"; var $pass = ""; var $database = "projeto"; } Nessa classe montamos ela com 4 variáveis: $ip, $user, $pass e $database. Nelas estão armazenadas as configurações necessárias para acesso ao banco, isso é legal quando acontece de alguém querer configurar seu sistema, aí fica tudo bem à vista do cara, que não precisa ter medo de mexer nos códigos =). Agora vamos montar algumas funções chamadas: Selects() AbreConexao() FechaConexao() // arquivo querys.php class querys { var $ip = "localhost"; var $user = "root"; var $pass = ""; var $database = "projeto"; function AbreConexao() { $this->conn = mysql_connect ($this->ip,$this->user,$this->pass); // aqui declaramos a var conn como variável da classe mysql_select_db ( $this->database, $this->conn); // esse "$this->" ele e utilizado para referenciar uma variável da classe } function FechaConexao() { mysql_close ($this->conn); // aqui fecho a conexão se baseando na variável acima declarada } function Selects($config) { $this->AbreConexao(); // Abrimos a conexão $conf = explode(",",$config) // Aqui explodimos e jogamos em array if ($conf[0] == "select_login") { $select = mysql_query("SELECT * FROM users WHERE login LIKE '".$conf[1]."' AND pass LIKE '".$_POST[pass]."' "); /* perceba que aqui estou pegando a variável $conf[1] que será passada para a função contendo o login e para o password estou pegando a variável direto do form. Esses dois exemplos são bem legais.. aí você escolhe qual seguir, eu prefiro o esquema utilizado no password. */ $result = mysql_num_rows($select); } if ($conf[0]=="select_permissao") { // aqui verifico permissão do usuário "administrador, usuário e etc" $select = mysql_query("SELECT * FROM users WHERE login LIKE '".$_POST[login]."' "); $coluna = mysql_fetch_array($select); $result = $coluna[permissao]; } $this->FechaConexao(); // Fechamos a conexão return $result; // aqui fica o retorno de todas as condicionais } } Perceba que ao declarar a função, declaro uma variável chamada $config e depois explodo a mesma, ao invés de fazer $var1, $var2, $var3. E adivinha porque? Simples, isso foi feito porque você não fica preso a uma limitada quantidade de variáveis, sendo assim poderá passar quantas variáveis quiser =), para ajustar a função ao seu gosto e adicionar quando quiser. Isso é legal quando você está montando um projeto muito grande, pode até chamar a mesma condicional umas 3 vezes. Se você for adicionar uma variável terá que alterar em todas? Pronto, para finalizarmos montamos o seguinte: // arquivo index.php <? include("querys.php"); $querys = new querys; if ($_POST[acao_form] == "verificar_usuario") { if ($querys->Selects("select_login,$_POST[login]")) { if ($querys->Selects("select_permissao")=="administrador") { header("Location:admin.php"); } else { header("Location:usuario.php"); } } else { echo "Você não está no banco"; } } ?>