Fabyo 66 Denunciar post Postado Março 14, 2005 1º Desafio de PHP O 1º Desafio iMasters do fórum PHP consiste em criar um cadastro de usuários e um sistema de login para os usuários cadastrados. Esse sistema deverá conter num admin com acesso para excluir e editar ou banir o usuário, sendo que os demais só podem editar seus próprios cadastros, e um logout. O sistema será avaliado pelos seguintes pontos: - Segurança - Quantidade de erros - Funcionamento O juri de avaliação será composto pelos moderadores do fórum. Forma de entrega Para entregar o sistema, por favor compacte num arquivo, publique numa URL e envie via MP para algum moderador deste fórum. Não publique o código ou o arquivo no fórum para evitar cópias. Nenhum script será divulgado, a não ser os vencedores. Assim que algum moderador receber o arquivo, ele será publicado na área restrita para avaliação. Se usarem algum banco de dados, favor enviar o banco num arquivo com extensão .sql junto com os demais arquivos no arquivo compactado. O Desafio é valido até às 0:00 do dia 24/03/2005. só será aceito a participação de membros do imasters Premiação 1º lugar . 10 pontos no ranking de desafios . Publicação do nome no Hall da Fama . CD-ROM iMasters de Photoshop . Divulgação do script e do nome do membro em destaque na home do iMasters. 2º lugar . 06 pontos no ranking de desafios . Divulgação do script e do nome do membro em destaque na home do iMasters. Participem e boa sorte a todos. Compartilhar este post Link para o post Compartilhar em outros sites
<%lindsay%> 0 Denunciar post Postado Março 15, 2005 Pode ser em qualquer banco de dados? Sql Server, Mysql, Postgre,...?Valeu galera, parabenizo vcs por essa iniciativa, quem ganha com isso é a comunidade. Compartilhar este post Link para o post Compartilhar em outros sites
Fabyo 66 Denunciar post Postado Março 16, 2005 Vale qualquer banco de dados, mas lembre-se que o que será avaliado será o código. Se usar um banco mais robusto, pedimos apenas para rodá-lo em algum servidor, enviando-nos o link, para que todos os moderadores possam avaliar tranquilamente. Caso não tenha jeito, sem problemas... Compartilhar este post Link para o post Compartilhar em outros sites
Fabyo 66 Denunciar post Postado Março 22, 2005 Ja temos um membro concorrendo ao premio do desafio e o nome de destaque no Hall da Fama Redneck* Quem ainda quiser participar ainda da tempo Compartilhar este post Link para o post Compartilhar em outros sites
4P. 0 Denunciar post Postado Março 22, 2005 Tambem quero participar Compartilhar este post Link para o post Compartilhar em outros sites
Cerrito 0 Denunciar post Postado Março 22, 2005 vamos lá galera, vamos participar...sistema simples de login...quero ver mais gente participando...mas o tempo tá terminando...então vamo se coça e enviar esses scripts...mostrem a lógica e criatidades dos desenvolvedores brasileiros...obs: não gosto do termo programador...programar qualquer um programa...basta comprar aqueles livros de aprenda tudo em 24 horas...mas desenvolver algo utilizavel, bom ai a coisa muda de figurars...nossa como to divagando hoje...abraços galera e participem...Marcio Compartilhar este post Link para o post Compartilhar em outros sites
Metzen 0 Denunciar post Postado Março 23, 2005 Fui ver isso agora... to com prazo curto! =( Compartilhar este post Link para o post Compartilhar em outros sites
Fabyo 66 Denunciar post Postado Março 23, 2005 Mais um concorrente participando do desafio Metzen valeu pessoal Compartilhar este post Link para o post Compartilhar em outros sites
felipe maricato moura 0 Denunciar post Postado Março 23, 2005 bah descobrir hj se voces prorogarem o prazo em 1 semana eu até participaria mas hj já não da mais tempopor que voces não prorogam o prazo tem muitos poucos participantese eu to muito afim de participar :D Compartilhar este post Link para o post Compartilhar em outros sites
Fabyo 66 Denunciar post Postado Março 23, 2005 Opa vamos prolongar o prazo de entrega ate o dia 31/03/05 valeu pessoal participem Compartilhar este post Link para o post Compartilhar em outros sites
Recycled 0 Denunciar post Postado Março 25, 2005 Como acabei de ver, se eu conseguir acabar um sistema q estou fazendo eu participo ;) Boa sorte para todos ;) Compartilhar este post Link para o post Compartilhar em outros sites
hinom 5 Denunciar post Postado Março 25, 2005 estou soh de olho. rssquero ver os novos talentos Compartilhar este post Link para o post Compartilhar em outros sites
Illidan 0 Denunciar post Postado Março 31, 2005 Eu participaria, se tivesse visto 1 dia antes! :( Até comecei a montar alguma coisa, mas não vai dar tempo... boa sorte pros participantes... vou ficar no aguardo do próximo desafio. Compartilhar este post Link para o post Compartilhar em outros sites
red neck * 0 Denunciar post Postado Abril 1, 2005 Eu participaria, se tivesse visto 1 dia antes! sad.gifAté comecei a montar alguma coisa, mas não vai dar tempo... boa sorte pros participantes... vou ficar no aguardo do próximo desafio.ainda bem :P , heheh brincadeira, mais tambem ja ia ser injustissa voce participar, assim nao ia ter graca :unsure: eu fiz o desafio, e realmente nao estou importantando com ganhar ou perder, o bom é que tentei http://forum.imasters.com.br/public/style_emoticons/default/joia.gif e conserteza aprendi muito, nos proximos estarei ai de novoabracoss Compartilhar este post Link para o post Compartilhar em outros sites
4P. 0 Denunciar post Postado Abril 1, 2005 http://forum.imasters.com.br/public/style_emoticons/default/bye1.gif Ae Galera Alguem sabe quando, vai sair o resultado!!! http://forum.imasters.com.br/public/style_emoticons/default/excl.gif Estou loco pra saber o resultado. http://forum.imasters.com.br/public/style_emoticons/default/ermm.gif :o t+ http://forum.imasters.com.br/public/style_emoticons/default/joia.gif Compartilhar este post Link para o post Compartilhar em outros sites
Illidan 0 Denunciar post Postado Abril 1, 2005 ainda bem :P , heheh brincadeira, mais tambem ja ia ser injustissa voce participar, assim nao ia ter graca :unsure: hehehe, tá bom... :P coitado de mim, isso sim... Consegui entregar no final das contas... não ficou do jeito que eu queria, mas nem dava... esses desafios são sempre bons pra gente aprender e lembrar certas coisas da linguagem. :) Abraços! Compartilhar este post Link para o post Compartilhar em outros sites
Cerrito 0 Denunciar post Postado Abril 1, 2005 Bom galera o desafio já foi encerrado como você já sabem, a votação está sendo feita pelos admins e moderas do forum... já estamos pensando no próximo desafio, não posso adiantar muito mas parece que vai ter manipulação de arquivos... acho que já falei demais... rs... acredito que segunda feira teremos o resultado e já as regras do próximo desafio e estamos pensando em deixar mais transparente para vcs o resultado... e a votação... abraços galera... Marcio Compartilhar este post Link para o post Compartilhar em outros sites
diegopsi 0 Denunciar post Postado Abril 7, 2005 Gostaria de dar uma olhada nos participantesVocês poderiam disponibilizar as páginas para vermos Compartilhar este post Link para o post Compartilhar em outros sites
Fabyo 66 Denunciar post Postado Abril 8, 2005 Como sao muitos script e tem imagens vou estar postando so os script principais do desafio caso alguem peca o script completo so pedir que nos enviaremos por email 4P. con_mysql.php: <? include "config.php"; //CONECTA COM MYSQL $conn = @mysql_connect($host,$user,$password) or die("ERRO NA CONEXAO"); $db = @mysql_select_db($dbname, $conn) or die("ERRO NA SELECAO DA BASE DE DADOS"); ?> config.php: <?PHP $host="localhost"; $dbname="phpmast_login1"; $user="phpmast"; $password="a1b2c3d4"; $site = "http://143.107.215.12"; $administrador = " Daniel Santos<br> <strong>Web Master</strong><br> <a href='mailto:dhsantos@esalq.usp.br'>dhsantos@esalq.usp.br</a><br> Sistema de Login <p><br><br>"; ?> login.php: <? include"../topo.tpl" ?> <br><br><br> <form name="frmAutentica" method="post" action="<? echo $site; ?>/login/login_db.php"> <input type="hidden" name="sgr" value="1"> <table border="0" align="center" cellpadding="0" cellspacing="3"> <tr> <td><table border="0" align="center" cellspacing="0" class="conteudo" cellpading="0"> <tr> <td align="left">Usuario:</td> <td align="left"><input name="login" type="text" class="input" size="20" maxlength="15"> </td> </tr> <tr> <td align="left">Senha:</td> <td align="left"><input name="senha" type="password" class="input" size="10" maxlength="6"></td> </tr> <tr> <td align="center"></td> <td align="left"><input name="btnLogar" type="submit" class="botao" value="Entrar"></td> </tr> <tr> <td height="5" colspan="2" align="center"></td> </tr> </table></td> </tr> <tr> <td align="left" valign="middle">* <a href="<? echo $site; ?>/usuario/user_add.php">Cadastrar</a></td> </tr> <tr> <td align="left" valign="middle">** <a href="<? echo $site; ?>/usuario/lembrar_senha.php">Lembrar senha</a></td> </tr> </table> </form> <? include"../rodape.tpl" ?> login_db.php: <?php // Conexao com o banco de dados require "../con_mysql.php"; include "../topo.tpl"; // Recupera a chave de seguranca $sgr = $_POST['sgr']; // Recupera o login $login = $_POST['login']; // Recupera a senha $senha = $_POST['senha']; $senha2 = md5($senha); $SQL = "SELECT * FROM tb_usuario WHERE usuario='$login' AND senha='$senha2'"; $result_id = @mysql_query($SQL) or die("Erro no SQL!"); $total = @mysql_num_rows($result_id); // Usuario nao forneceu a senha ou o login if(!$login || !$senha || !$sgr) { echo "<br><br><br><br>Voce deve digitar sua senha e login!<br><br>"; echo"<a href=\"#\" onclick=\"history.back();\">Voltar</a><br><br>"; } // Caso o usuario tenha digitado um login valido o numero de linhas sera 1.. elseif($total==0) { echo "<br><br><br><br>Usuario ou Senha Invalidos<br><br>"; echo"<a href=\"#\" onclick=\"history.back();\">Voltar</a><br><br>"; }else{ //ARMAZENAR AS SESSOES $dados = mysql_fetch_array($result_id); $id = $dados[0]; $nome = $dados[1]; $confirma = $dados[5]; $tipo = $dados[6]; $banir = $dados[7]; session_start(); $_SESSION['id_usuario'] = $id; $_SESSION['nome'] = $nome; $_SESSION['confirma'] = $confirma; $_SESSION['tipo'] = $tipo; $_SESSION['banir'] = $banir; header("Location: ../index2.php"); } include "../rodape.tpl"; ?> login_on.php: <? //INICIALIZA A SESSAO session_start(); $banir = $_SESSION['banir']; $confirma = $_SESSION['confirma']; //SE NAO TIVER VARIAVEIS REGISTRADAS //RETORNA PARA A TELA DE LOGIN if((!isset($_SESSION['id_usuario']))AND(!isset($_SESSION['nome']))){ header("Location: ../index.php"); } elseif($banir=="s"){ echo "<br><br>Voce foi <strong>banido</strong> do site por isso nao pode acessar a area restrita<br><br>"; include "rodape.tpl"; exit; } elseif($confirma=="sim"){ }else{ echo "<br><br>Voce nao confirmou seu cadastro no site, por isso nao pode acessar a area restrita<br><br>".$administrador; include "rodape.tpl"; exit; } ?> adm.php <? $tipo = $_SESSION['tipo']; if($tipo!="2"){ echo "<br><br>Voce nao e um <strong>USUARIO ADMINISTRADOR</strong>, por isso nao pode acessar a area restrita<br><br>".$administrador; include "../rodape.tpl"; exit; } ?> administracao.php <?PHP include"../topo.tpl"; include"../login/login_on.php"; include "adm.php"; $id_usuario = $_SESSION['id_usuario']; $usuario = $_SESSION['nome']; $tipo = $_SESSION['tipo']; ?> <br><br><br> <table width="650" border="1" align="center" cellpadding="0" cellspacing="0" bordercolor="#E4E4E4" bgcolor="#F5F5F5"> <tr align="center"> <td width="50%" height="15"><a href="banir_user.php">Banir Usuario</a></td> <td width="50%" height="15"><a href="del_user.php">Excluir Usuario</a></td> </tr> <tr align="center"> <td height="15"> </td> <td height="15"> </td> </tr> <tr align="center"> <td height="15"> </td> <td height="15"> </td> </tr> <tr align="center"> <td height="15"> </td> <td height="15"> </td> </tr> <tr align="center"> <td height="15"> </td> <td height="15"> </td> </tr> <tr align="center"> <td height="15"> </td> <td height="15"> </td> </tr> <tr align="center"> <td height="15"> </td> <td height="15"> </td> </tr> <tr align="center"> <td height="15"> </td> <td height="15"> </td> </tr> <tr align="center"> <td height="15"> </td> <td height="15"> </td> </tr> <tr align="center"> <td height="15"> </td> <td height="15"> </td> </tr> </table> <?PHP include"../rodape.tpl"; ?> banir_user.php <?PHP include"../topo.tpl"; include "../con_mysql.php"; include"../login/login_on.php"; include "adm.php"; $acao = $_GET['acao']; $banir = $_GET['banir']; $id = $_GET['id']; $id_usuario = $_SESSION['id_usuario']; $usuario = $_SESSION['nome']; $tipo = $_SESSION['tipo']; $sql_banido="SELECT * FROM tb_usuario WHERE tipo=1 AND banir='s'"; $query_banido = mysql_query($sql_banido) or die ("Erro 1"); $total_banido = mysql_num_rows($query_banido); $sql_ativo="SELECT * FROM tb_usuario WHERE tipo=1 AND banir='n'"; $query_ativo = mysql_query($sql_ativo) or die ("Erro 2"); $total_ativo = mysql_num_rows($query_ativo); $sql_todos = "SELECT * FROM tb_usuario WHERE tipo=1 ORDER BY nome ASC"; $query_todos = mysql_query($sql_todos) or die ("Erro 2"); if($acao=="alterar"){ $sql_alt = "UPDATE tb_usuario SET banir='$banir' WHERE id_usuario='$id'"; $query_alt = mysql_query($sql_alt); if($query_alt!=1){ echo "<br><br><br>- Ouve algum erro ao tentar banir o usuario.<br>"; echo "- Entre em contato com o administrador do site.<br><br>"; echo $administrador; }else{ header('Location: banir_user.php'); } }else{ ?> <br><br><br> <table width="650" border="0" cellspacing="0" cellpadding="0"> <tr align="left"> <td>Total de Usuarios Ativos: <strong><? echo $total_ativo; ?></td> </tr> <tr align="left"> <td>Total de Usuarios Banidos: <strong><? echo $total_banido; ?></strong></td> </tr> <tr> <td> </td> </tr> <tr> <td> <table width="100%" border="1" cellpadding="0" cellspacing="0" bordercolor="#FFFFFF"> <tr align="left" bgcolor="#ECE9D8" height="16"> <td width="86%"> Nome</td> <td width="14%"> Status</td> </tr> <? while($todos = mysql_fetch_array($query_todos)){ ?> <tr align="left" bgcolor="#DDEAFB"> <td> <? echo $todos[1]; ?></td> <td> <? if($todos[7]=="n"){ echo "<a href='banir_user.php?acao=alterar&banir=s&id=".$todos[0]."'><img src='../img/ativo.gif' border='0'> Ativo</a>"; }else{ echo "<a href='banir_user.php?acao=alterar&banir=n&id=".$todos[0]."'><img src='../img/banido.gif' border='0'> Banido</a>"; } ?> </td> </tr> <? } ?> </table> </td> </tr> </table> <?PHP } include "../rodape.tpl"; ?> del_user.php <?PHP include"../topo.tpl"; include "../con_mysql.php"; include"../login/login_on.php"; include "adm.php"; $acao = $_GET['acao']; $banir = $_GET['banir']; $id = $_GET['id']; $id_usuario = $_SESSION['id_usuario']; $usuario = $_SESSION['nome']; $tipo = $_SESSION['tipo']; $sql_users="SELECT * FROM tb_usuario WHERE tipo=1"; $query_users = mysql_query($sql_users) or die ("Erro 1"); $total_users = mysql_num_rows($query_users); if($acao=="deletar"){ $sql_del = "DELETE FROM tb_usuario WHERE id_usuario='$id'"; $query_del = mysql_query($sql_del); if($query_del!=1){ echo "<br><br><br>- Ouve algum erro ao tentar deletar o usuario.<br>"; echo "- Entre em contato com o administrador do site.<br><br>"; echo $administrador; }else{ header('Location: del_user.php'); } }else{ ?> <br><br><br> <table width="650" border="0" cellspacing="0" cellpadding="0"> <tr align="left"> <td>Total de Usuarios: <strong><? echo $total_users; ?></td> </tr> <tr> <td> </td> </tr> <tr> <td> <table width="100%" border="1" cellpadding="0" cellspacing="0" bordercolor="#FFFFFF"> <tr align="left" bgcolor="#ECE9D8" height="16"> <td width="86%"> Nome</td> <td width="14%"> Status</td> </tr> <? while($todos = mysql_fetch_array($query_users)){ ?> <tr align="left" bgcolor="#DDEAFB"> <td> <? echo $todos[1]; ?></td> <td> <a href="del_user.php?acao=deletar&id=<? echo $todos[0]; ?>"><img src="../img/deletar.gif" border="0"> Excluir</a></td> </tr> <? } ?> </table> </td> </tr> </table> <?PHP } include "../rodape.tpl"; ?> ##################################################### metzen admin.php <? /* Nome: Sistema de Login Descricao: Desenvolvido exclusivamente para Desafio PHP iMasters Por: Metzen ( andressantos@gmail.com ) Versao: 0.1 Data: 23/03/05 */ require_once("config.php"); if($_SESSION["codUsuario"]) { if(!$_SESSION["indAdmin"]) header("Location: "._dominio."login.php?e=1"); } else { header("Location: "._dominio."index.php?e=2"); } if($_POST["act"] == 1) { $strSQL = "DELETE FROM usuario WHERE codUsuario = ".$_POST["codUsuario"]; if(mysql_query($strSQL,$conn)) $js = "Usuario removido com sucesso"; } if($_POST["act"] == 2) { $strSQL = "SELECT indStatus FROM usuario WHERE codUsuario = ".$_POST["codUsuario"]; $resUserBlock = mysql_query($strSQL,$conn); if(mysql_result($resUserBlock,0,"indStatus")==1) $indStatusFinal = 0; else $indStatusFinal = 1; $strSQL = "UPDATE usuario SET indStatus = ".$indStatusFinal." WHERE codUsuario = ".$_POST["codUsuario"]; if(mysql_query($strSQL,$conn)) $js = "Usuario bloqueado/desbloqueado com sucesso"; } $strSQL = "SELECT codUsuario,strLogin,indStatus FROM usuario"; $resUsers = mysql_query($strSQL,$conn); ?><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <title>Untitled Document</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <link href="css.css" rel="stylesheet" type="text/css"> <script language="javascript" type="text/javascript"> <? if($js!="") echo 'window.alert("'.$js.'");'; ?> function excluir() { if(document.getElementById('codUsuario').value!="") { document.getElementById('act').value = 1; document.getElementById('formAdmin').submit(); } } function editar() { if(document.getElementById('codUsuario').value!="") { document.getElementById('act').value = 3; document.getElementById('formAdmin').action = 'edit.php'; document.getElementById('formAdmin').submit(); } } function bloquear() { if(document.getElementById('codUsuario').value!="") { document.getElementById('act').value = 2; document.getElementById('formAdmin').submit(); } } </script> </head> <body> <center> <h1 align="center">Sistema de Administracao</h1> </center> <h4><a href="admin.php">Administracao</a></h4> <h4><a href="edit.php">Editar Meu Cadastro</a></h4> <h4><a href="<?=_dominio;?>?sair">Logout(<?=$_SESSION["strLogin"];?>)</a></h4> <br class="cl"><br> <form action="admin.php" method="post" enctype="multipart/form-data" name="formAdmin" id="formAdmin"> <table width="350" height="120" border="0" align="center" cellpadding="2" class="borda"> <tr> <td rowspan="3" align="center"> <select name="codUsuario" size="5" style="width: 150px;"> <? while($arr = mysql_fetch_array($resUsers)) { if($arr["indStatus"]) $block = "(blocked)"; else $block = ""; echo '<option value="'.$arr["codUsuario"].'">'.$arr["strLogin"].$block.'</option>'; } ?> </select></td> <td width="100" height="40"><a href="java script: editar();">Editar Usuario </a></td> </tr> <tr> <td width="100" height="40"><a href="java script: bloquear();">Bloquear/Desbloquear</a></td> </tr> <tr> <td width="100" height="40"><a href="java script: excluir();">Excluir Usuario</a></td> </tr> </table> <input name="act" type="hidden" id="act" value="0"> </form> </body> </html> config.php <? /* Nome: Sistema de Login Descricao: Desenvolvido exclusivamente para Desafio PHP iMasters Por: Metzen ( andressantos@gmail.com ) Versao: 0.1 Data: 23/03/05 */ //Define o dominio/url onde esta hospedado o script define("_dominio","http://www.metzen.flogs.com.br/desafio/1/"); // Include no arquivo de funcoes include("func.inc.php"); // Configuracao se servidor(es) de banco de dados $db[0]["host"] = "localhost"; $db[0]["user"] = "phpmast"; $db[0]["pass"] = "a1b2c3d4"; $db[0]["db"] = "phpmast_login3"; $db[0]["db"] = "phpmast_login3"; // Inicializa a sessao session_start(); //Conecta ao banco de dados $db[0] utilizando a funcao conectar($dbServ) em func.inc.php $conn = conectar($db[0]); ?> login.php <? /* Nome: Sistema de Login Descricao: Desenvolvido exclusivamente para Desafio PHP iMasters Por: Metzen ( andressantos@gmail.com ) Versao: 0.1 Data: 23/03/05 */ require_once("config.php"); if(!$_SESSION["codUsuario"]) { if($_POST["s"] && $_POST["l"]) { $strSQL = "SELECT strLogin,codUsuario,indAdmin,indStatus FROM usuario WHERE strLogin = '".$_POST["l"]."' AND strSenha = MD5('".$_POST["s"]."')"; $resUser = mysql_query($strSQL,$conn); if(mysql_num_rows($resUser)==1) { $objUser = mysql_fetch_object($resUser); if($objUser->indStatus==1) { header("Location: "._dominio."index.php?e=3"); } else { $_SESSION["codUsuario"] = $objUser->codUsuario; $_SESSION["strLogin"] = $objUser->strLogin; $_SESSION["indAdmin"] = $objUser->indAdmin; } } else { header("Location: "._dominio."index.php?e=1"); } } else { header("Location: "._dominio."index.php?e=2"); } } ?><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <title>Untitled Document</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <link href="css.css" rel="stylesheet" type="text/css"> <? $erros[1] = "Voce precisa ser Administrador para acessar essa pagina."; if($_GET["e"]!="") echo '<script language="javascript" type="text/javascript">window.alert("'.$erros[$_GET["e"]].'");</script>'; ?> </head> <body> <center><h1 align="center">Sistema Cadastro de Usuario </h1></center> <? if($_SESSION["indAdmin"]) echo '<h4><a href="admin.php">Administracao</a></h4>'; ?> <h4><a href="edit.php">Editar Meu Cadastro</a></h4> <h4><a href="<?=_dominio;?>?sair">Logout(<?=$_SESSION["strLogin"];?>)</a></h4> </body> </html> index.php <? /* Nome: Sistema de Login Descricao: Desenvolvido exclusivamente para Desafio PHP iMasters Por: Metzen ( andressantos@gmail.com ) Versao: 0.1 Data: 23/03/05 */ require_once("config.php"); if(isset($_GET["sair"])) { $_SESSION["codUsuario"] = FALSE; $_SESSION["strLogin"] = FALSE; $_SESSION["indAdmin"] = FALSE; session_unregister("codUsuario"); session_unregister("strLogin"); session_unregister("indAdmin"); } if($_SESSION["codUsuario"]) header("Location: "._dominio."login.php"); ?> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <title>Untitled Document</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <? $erros[1] = "Login ou senha incorretos."; $erros[2] = "Para acessar essa pagina voce precisa estar logado."; $erros[3] = "Usuario Bloqueado."; if($_GET["e"]!="") echo '<script language="javascript" type="text/javascript">window.alert("'.$erros[$_GET["e"]].'");</script>'; ?> <link href="css.css" rel="stylesheet" type="text/css"> </head> <body> <form action="login.php" method="post" enctype="multipart/form-data" name="formLogin" id="formLogin"> <h1 align="center">Sistema Cadastro de Usuario </h1> <table width="250" border="0" align="center" cellpadding="2" class="borda"> <tr> <td width="104" align="right">Login: </td> <td width="130" align="left"><input name="l" type="text" id="l" size="15" maxlength="45"></td> </tr> <tr> <td align="right">Senha: </td> <td align="left"><input name="s" type="password" id="s2" size="15"></td> </tr> <tr align="center"> <td align="right"><a href="java script: document.getElementById('formLogin').submit();">Entrar</a> </td> <td align="left"><a href="cadastro.php">Cadastre-se</a></td> </tr> </table> <p>Admin Padrao<br> Login: admin<br> Senha: admin </p> </form> </body> </html> func_inc.php <? /* Nome: Sistema de Login Descricao: Desenvolvido exclusivamente para Desafio PHP iMasters Por: Metzen ( andressantos@gmail.com ) Versao: 0.1 Data: 23/03/05 */ function conectar($dbServ) { $db = mysql_connect($dbServ["host"],$dbServ["user"],$dbServ["pass"]) or die("<center><b>Erro ao conectar ao Banco de Dados</b></center>"); mysql_select_db($dbServ["db"],$db); return $db; } function verificaEmail($strEmail){ if(eregi("^[a-z0-9\._-]+@+[a-z0-9\._-]+\.+[a-z]{2,3}$", $strEmail)) return TRUE; else return FALSE; } ?> edit.php <? /* Nome: Sistema de Login Descricao: Desenvolvido exclusivamente para Desafio PHP iMasters Por: Metzen ( andressantos@gmail.com ) Versao: 0.1 Data: 23/03/05 */ require_once("config.php"); if(!$_SESSION["codUsuario"]) header("Location: "._dominio."index.php?e=2"); if($_POST["codUsuario"] && $_SESSION["indAdmin"]) { $editUser = $_POST["codUsuario"]; } else { $editUser = $_SESSION["codUsuario"]; } if($_POST["l"] && $_POST["e"]) { if(!verificaEmail($_POST["e"])) { $js = "E-mail invalido"; } else { $strSQL = "SELECT codUsuario FROM usuario WHERE strLogin = '".$_POST["l"]."'"; $resUserExist = mysql_query($strSQL,$conn); if(mysql_num_rows($resUserExist)>0) { if(mysql_result($resUserExist,0,"codUsuario") != $editUser ) { $total = 1; } else { $total = 0; } } else { $total = 0; } if($total==0) { if($_POST["s"]) $clauseSenha = ",strSenha = MD5('".$_POST["s"]."')"; if($_POST["a"]=="sim" && $_SESSION["indAdmin"]) $clauseAdmin = ",indAdmin = 1"; if($_POST["a"]=="nao" && $_SESSION["indAdmin"]) $clauseAdmin = ",indAdmin = 0"; $strSQL = "UPDATE usuario SET strLogin = '".$_POST["l"]."', strEmail = '".$_POST["e"]."' ".$clauseSenha.$clauseAdmin." WHERE codUsuario = ".$editUser; if(mysql_query($strSQL,$conn)) { $js = "Alteracoes realizadas com sucesso"; if($_SESSION["codUsuario"] == $editUser) { $_SESSION["strLogin"] = $_POST["l"]; if($_SESSION["indAdmin"]) if($_POST["a"]=="sim") $_SESSION["indAdmin"] = 1; else $_SESSION["indAdmin"] = 0; } } } else { $js = "Login existente"; } } } $strSQL = "SELECT strLogin,strEmail,indAdmin FROM usuario WHERE codUsuario = ".$editUser; $resUser = mysql_query($strSQL,$conn); $objUser = mysql_fetch_object($resUser); ?><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <title>Untitled Document</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <link href="css.css" rel="stylesheet" type="text/css"> <? if($js!="") echo '<script type="text/javascript" language="javascript">window.alert("'.$js.'");</script>'; ?> </head> <body> <center><h1 align="center">Sistema Cadastro de Usuario </h1></center> <? if($_SESSION["indAdmin"]) echo '<h4><a href="admin.php">Administracao</a></h4>'; ?> <h4><a href="edit.php">Editar Meu Cadastro</a></h4> <h4><a href="<?=_dominio;?>?sair">Logout(<?=$_SESSION["strLogin"];?>)</a></h4><br> <br class="cl"> <form action="edit.php" method="post" enctype="multipart/form-data" name="formEdit"> <table width="250" border="0" align="center" cellpadding="2" class="borda"> <tr> <td width="99" align="right">Login: </td> <td width="135" align="left"><input name="l" type="text" id="l" size="20" maxlength="45" value="<?=$objUser->strLogin; ?>"></td> </tr> <tr> <td align="right">Nova Senha: </td> <td align="left"><input name="s" type="password" id="s2" size="20"></td> </tr> <tr> <td align="right">E-mail:</td> <td align="left"><input name="e" type="text" id="s" size="20" value="<?=$objUser->strEmail;?>"></td> </tr> <tr align="center"> <td align="right">Admin:</td> <td align="left"><input name="a" type="radio" class="nb" value="sim" <?=!$_SESSION["indAdmin"] ? "disabled" : "";?> <?=$objUser->indAdmin ? "checked" : "";?>> sim <input name="a" type="radio" class="nb" value="nao" <?=!$_SESSION["indAdmin"] ? "disabled" : "";?> <?=!$objUser->indAdmin ? "checked" : "";?>> nao</td> </tr> <tr align="center"> <td colspan="2"><a href="java script: if(document.getElementById('l').value!='' && document.getElementById('e').value!=''){ document.getElementById('formEdit').submit(); } else{ window.alert('Voce deve preencher todos os campos');}">Alterar</a> <input type="hidden" name="codUsuario" value="<?=$editUser;?>"></td> </tr> </table> </form> </body> </html> ##################################################### red neck * config.php <? $local="localhost"; $usuario="phpmast"; $senha="a1b2c3d4"; $database="phpmast_login2"; ?> index.php <? session_start(); include "config.php"; $conexao = mysql_connect($local, $usuario, $senha); $db = mysql_select_db($database); if(isset($_GET['act']) AND $_GET['act'] == "login"){ function str_clean($s){ $s = trim($s); $s = strip_tags($s); $s = addslashes($s); $arr = Array(" or ","select ", "delete ","create "."#","=","--",";","*"); foreach ($arr as $arr_loop){ str_replace($arr_loop,"",$s); } return $s; } $us = str_clean($_POST['us']); $se = str_clean($_POST['se']); $query = mysql_query("select * from login WHERE usuario='$us' AND senha=md5('$se')"); if (mysql_num_rows($query) == 0) { echo "<script>alert('Error 401: Acesso Negado para [ " . ucwords($us) . " ].'); history.back(-1); </script>"; exit; }else{ while ($r = mysql_fetch_array($query)){ if($r["nivel"] == 4){ echo "<script>alert('Error XXX: " . ucwords($us) . ", voce foi banido por justa causa.'); history.back(-1);</script>"; exit; }else{ $_SESSION['us'] = $us; header("Location: adm.php"); exit; } } } }elseif(isset($_GET["act"]) AND $_GET["act"] == "submit"){ $us = $_POST['us']; $se = $_POST['se']; $co = $_POST['co']; $query_y = mysql_query("select * from login WHERE usuario='$us'"); if (mysql_num_rows($query_y) != 0) { echo "<script>alert('Error YYY: O usuario [ " . ucwords($us) . " ] ja existe.'); history.back(-1); </script>"; exit; }else{ if($se == $co){ $query = mysql_query("INSERT INTO login VALUES('','$us',md5('$se'),'1')"); echo "<script>alert('Registro realizado com sucesso !'); window.location = '?get=idx'; </script>"; exit; }else{ echo "<script>alert('Senha nao confere com Confirmacao !'); history.back(-1); </script>"; exit; } } } ?> <html> <head> <title>Desafio 1 - IMasters - Php // by redneck</title> </head> </form> <style type="text/css"> .c1 { width: 240px; border: 1px solid #c0c0c0; padding: 0; } .c2 { font-family: Arial, Helvetica, sans-serif; font-size: 12px; color: #ffffff; padding:2px 5px; font-weight: bold; letter-spacing: 5px; text-align: center; background-color: #999999; border: 1px solid #c0c0c0; } </style> <body style="text-align: center;"> <script language="javascript"> if(screen.width == 800){ document.write('<div id="l_center" style="position: absolute; left: 114px; top: 163px; margin-left: 150px; z-index: 1;">'); }else if(screen.width == 1024){ document.write('<div id="l_center" style="position: absolute; left: 225px; top: 250px; margin-left: 150px; z-index: 1;">'); } if(document.cookie("alerta")){ document.cookie = "alerta" + "=" + "true" + 1000*60*60*24*30; alert('Melhor funcionamento em FireFox.\n'); } </script> <fieldset class="c1"> <? if(!isset($_GET["act"]) || $_GET["act"] == "idx"){ ?> <legend class="c2">Login</legend> <form name="form" action="?act=login" method="post"> <font face="Arial" color="000000" size="1"> <br> Usuario: <input type="text" name="us"> <br> Senha: <input type="password" name="se"> <div align="right">(<a href="?act=registro">Registre-se</a>) <input type="submit" value="Login" style="cursor: pointer"> </div> <br> </font> </form> <? }elseif($_GET["act"] == "registro"){ ?> <legend class="c2">Registro</legend> <form name="form" action="?act=submit" method="post"> <font face="Arial" color="000000" size="1"> <br> Usuario: <input type="text" name="us"> <br> Senha: <input type="password" name="se"> <br> Confirma: <input type="password" name="co"> <div align="right"><input type="submit" value="Registrar" style="cursor: pointer"> </div> <br> </font> </form> <? }else{ ?> <script> window.location = "?act=idx"; </script> <? } ?> </fieldset> </div> </body> </html> adm.php <? session_start(); if(!isset($_SESSION['us'])){ Header("Location: index.php?get=idx"); exit;} include "config.php";$us = $_SESSION['us']; $conexao = mysql_connect($local, $usuario, $senha);$db = mysql_select_db($database); $query = mysql_query("select * from login WHERE usuario='$us'"); if (mysql_num_rows($query) == 0) { Header("Location: index.php?get=idx"); exit;}else{ while ($r = mysql_fetch_array($query)){ $n = $r["nivel"]; }} $trava = true; foreach($_POST as $c=>$v){ $$c = strip_tags(trim($v));} ?><html><head> <title>Desafio 1 - IMasters - Php // by redneck</title> </head></form> <style type="text/css"> .c1 {width: 240px;border: 1px solid #c0c0c0;padding: 0; } .c2 {font-family: Arial, Helvetica, sans-serif;font-size: 12px;color: #ffffff;padding:2px 5px;font-weight: bold;letter-spacing: 3px;text-align: center;background-color: #999999;border: 1px solid #c0c0c0;} </style> <body style="text-align: center;"> <script language="javascript"> if(screen.width == 800){ document.write('<div id="l_center" style="position: absolute; left: 114px; top: 10%; margin-left: 150px; z-index: 1;">');}else if(screen.width == 1024){ document.write('<div id="l_center" style="position: absolute; left: 225px; top: 10%; margin-left: 150px; z-index: 1;">');} function deleta(id,nome,tipo,area){ if (confirm ("Deseja realmente deletar o " + tipo + " " + nome + " ?")) { window.location = "?get=adm_" + area + "&act=deleta&id=" + id} else { alert("Ok ! Operacao anulada.") }} </script> [right]?get=logoff[/right] <? if(!isset($_GET["get"])){ header("location: adm.php?get=idx"); exit;}elseif($_GET["get"] == "logoff"){ unset($_SESSION); session_destroy(); echo "<script> alert('Logoff efeituado com sucesso.'); window.location = 'index.php?get=idx'; </script>"; exit;}elseif($_GET["get"] == "edita_cadastro"){ $query_c = mysql_query("select * from login WHERE usuario='$us'"); if (mysql_num_rows($query_c) != 0) { while ($r_c = mysql_fetch_array($query_c)){ ?> <fieldset class="c1"><legend class="c2">Editar Cadastro</legend> <table align="center"> <form method="post" action="?get=submit_edita_cadastro"> Usuario: <input type="text" name="us_post" value="<?=$r_c['usuario'];?>"> Senha: <input type="password" name="se_post" value="n_modfc"> Conferi: <input type="password" name="co_post" value="n_modfc"> Nivel: <? }?><select name="ni_post" style="width: 143px" disabled> <? $query_n = mysql_query("select * from nivel"); if (mysql_num_rows($query_n) != 0) { while ($r_n = mysql_fetch_array($query_n)){ echo "<option value='" . $r_n["id"] . "'>" . ucwords($r_n["nivel"]) . "</option>"; } ?></select> [right]<input type="submit" value="Editar"> [/right] </form> </table> </fieldset> <? } } exit;}elseif($_GET["get"] == "submit_edita_cadastro"){ $query_y = mysql_query("select * from login WHERE usuario='$us_post'"); if ($us_post != $us && mysql_num_rows($query_y) != 0) { echo "<script>alert('Error YYY: O usuario [ " . ucwords($us_post) . " ] ja existe.'); history.back(-1); </script>"; exit; }else{ if($se_post == $co_post){ if($se_post == "n_modfc"){ $query_q = mysql_query("UPDATE login SET usuario='$us_post' WHERE usuario='$us'"); echo "<script>alert('Cadastro editado com sucesso !'); window.location = '?get=idx'; </script>"; exit; }else{ $query_q = mysql_query("UPDATE login SET usuario='$us_post', senha=md5('$se_post') WHERE usuario='$us'"); echo "<script>alert('Cadastro editado com sucesso !'); window.location = '?get=idx'; </script>"; exit; } }else{ echo "<script>alert('Senha nao confere com Confirmacao !'); history.back(-1); </script>"; exit; } }}elseif($_GET["get"] == "deleta_cadastro"){ $query_a = mysql_query("DELETE FROM login WHERE usuario='$us'"); echo "<script> alert('Cadastro deletado com sucesso.'); window.location = 'index.php'; </script>"; exit;} if($n == 3){ if($_GET["get"] == "adm_niveis"){ if($_GET["act"] == "adiciona"){ ?> <fieldset class="c1"><legend class="c2">Adiciona Niveis</legend> <table align="center"> <form method="post" action="?get=adm_niveis&act=submit_adiciona"> Nivel: <input type="text" name="nivel_post"> [right]<input type="submit" value="Adicionar"> [/right] </form> </table> </fieldset> <? exit; }elseif($_GET["act"] == "submit_adiciona"){ $query_i = mysql_query("INSERT INTO nivel VALUES('','$nivel_post')"); echo "<script> alert('Nivel adicionado com sucesso.'); window.location = '?get=idx'; </script>"; exit; }elseif($_GET["act"] == "deleta"){ $idx = $_GET["id"]; $query_d = mysql_query("DELETE FROM nivel WHERE id='$idx'"); echo "<script> alert('Nivel deletado com sucesso.'); window.location = '?get=idx'; </script>"; exit; } }elseif($_GET["get"] == "adm_usuarios"){ if($_GET["act"] == "deleta"){ $idx = $_GET["id"]; $query_d = mysql_query("DELETE FROM login WHERE id='$idx'"); echo "<script> alert('Usuario deletado com sucesso.'); window.location = '?get=idx'; </script>"; exit; }elseif($_GET["act"] == "bane"){ $idx = $_GET["id"]; $query_b = mysql_query("UPDATE login SET nivel='4' WHERE id='$idx'"); echo "<script> alert('Usuario banido com sucesso.'); window.location = '?get=idx'; </script>"; exit; }elseif($_GET["act"] == "desbane"){ $idx = $_GET["id"]; $query_u = mysql_query("UPDATE login SET nivel='1' WHERE id='$idx'"); echo "<script> alert('Usuario desbanido com sucesso.'); window.location = '?get=idx'; </script>"; exit; }elseif($_GET["act"] == "edita"){ $idx = $_GET["id"]; $query_f = mysql_query("select * from login WHERE id='$idx'"); if (mysql_num_rows($query_f) != 0) { while ($r_f = mysql_fetch_array($query_f)){ ?> Compartilhar este post Link para o post Compartilhar em outros sites
red neck * 0 Denunciar post Postado Abril 8, 2005 nao seria melhor disponibilizar os sistemas zipados?zuo todo o layout do forum...abracos Compartilhar este post Link para o post Compartilhar em outros sites