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";
}
}
?>
<form>
<input type="hidden" name="acao_form" value="verificar_usuario">
<input type="text" name="login">
<input type="submit" value="OPa!">
</form>