Eu como não gosto de guardar os meus codigos de PHP vou publicar aqui o codigo do meu script!!
Ficheiroslogin.php, user.php, users.inc, config.inc
Codigo do ficheiro login.php
<?
/* $Id: login.php,v 1.4 27/04/2006 18:49:32 kingless Exp $ */
session_start();
setcookie("username", $_POST['username'], time()+60*60*24*30);
setcookie("password", $_POST['password'], time()+60*60*24*30);
require("config.inc");
require("users.inc");
$username = $_POST['username'];
$password = $_POST['password'];
$Login = $_POST['Login'];
$_SESSION['username'] = $username;
$_SESSION['senha'] = $password;
function sem_senha()
{
$erro->na_senha = "Insira a Senha!!"."<br />";
echo($erro->na_senha."<br />");
}
function sem_user() {
$erro->no_user = "Insira o Username!!"."<br />";
echo($erro->no_user."<br />");
}
function nenhum_dado() {
$erro->nenhum_dado = "Insira o Username e a Password!!"."<br />";
echo($erro->nenhum_dado."<br />");
}
function um_dos_dados() {
$erro->um_errado = "Um dos dados está errado!!"."<br />";
echo($erro->um_errado."<br />");
}
function usuarios() {
print_r("$usuarios");
}
if(isset($username) && isset($password) and array_search($password, $usuarios) === $username) {
$_SESSION['username'] = $username;
$_SESSION['senha'] = $password;
$_SESSION['Ligado'] = TRUE;
if(preg_match("/^(http:\/\/)?([^\/]+)/i", PAGINA, $sim)) {
echo "<html><head>";
echo "<SCRIPT language=\"JavaScript\">";
echo "window.location=\"".PAGINA."\";";
echo "</SCRIPT>";
} elseif(preg_match("/[^\.\/]+\.[^\.\/]+$/", PAGINA, $sim[1])) {
echo "<html><head>";
echo "<SCRIPT language=\"JavaScript\">";
echo "window.location=\"".PAGINA."\";";
echo "</SCRIPT>";
} else {
echo "<html><head>";
echo "<SCRIPT language=\"JavaScript\">";
echo "window.location=\"http://". $_SERVER['HTTP_HOST'] ."/". PAGINA ."\";";
echo "</SCRIPT>";
}
} elseif(isset($Login) && !$password) {
echo "$body";
sem_senha();
echo $back;
} elseif(isset($Login) && !$username) {
echo "$body";
sem_user();
echo $back;
} elseif(isset($Login) && !$username && !$password) {
echo "$body";
nenhum_dado();
echo $back;
} elseif(isset($Login) && isset($username) && isset($password) and array_search($password,$usuarios) !== $username) {
echo "$body";
um_dos_dados();
} else {
echo "<html>";
echo "<head>";
echo "<title>". NOME_DO_SITE ." Login</title></head>";
echo "<meta name=\"author\" content=\"CopyRight 2006 kingless\">";
echo "<body bgcolor=\"#".$Scor->bg."\" text=\"#".$Scor->texto."\" link=\"#".$Scor->link."\" vlink=\"#".$Scor->vlink."\" alink=\"#".$cor->alink."\">";
echo "<center><br>";
echo "<div align=\"center\">";
echo "<table width=\"25%\" border=\"2\" bordercolor=\"#".$Scor->bcor."\" cellpadding=\"4\" cellspacing=\"0\" align=\"center\">";
echo "<tr bgcolor=\"#".$Scor->tbg."\"><td>";
echo "<div align=\"center\"><b><font size=\"2\" face=\"Verdana, Arial, Helvetica, sans-serif\" color=\"#".$Scor->font."\">Bem Vindo Guest !! ".date("d/m/Y H:i:s")."</font></b></div></td></tr></table></div><br>";
echo "<table width=\"25%\" bgcolor=\"#".$Scor->bcor."\">\n";
echo "<tr><td>\n";
echo "<table cellpadding=\"4\" bgcolor=\"#36302A\" width=\"100%\">\n";
echo "<tr><td><center>\n";
echo "<font color=\"#".$Scor->font."\">\n";
echo "<font size=+2><b>Login</b></font>\n";
echo "<form method=POST action=login.php>\n";
echo "<table border=0><tr><td><font color=\"#".$Scor->font."\">Username</td><td><input type=text name=username value=lol/></td></tr>\n";
echo "<tr><td><font color=\"#".$Scor->font."\">Password</td><td><input type=password name=password /></td></tr></table>\n";
echo "<br><input type=submit name=Login value=Login />\n";
echo "</form><font size=2><br><br>Não tem uma conta, <a href=\"user.php\">Crie uma!<br></a>"; ?>
<? $users = count(array_keys($usuarios)); echo "$users"; ?> Usuarios registrados <?
echo "</a></font></td></tr></table></td></tr></table></center><br>";
echo "<div align=\"center\">";
echo "<table width=\"25%\" border=\"2\" bordercolor=\"#".$Scor->bg."\" cellpadding=\"4\" cellspacing=\"0\" align=\"center\">";
echo "<tr bgcolor=\"#".$Scor->tbg."\"><td>";
echo "<div align=\"center\"><b><font size=\"2\" face=\"Verdana, Arial, Helvetica, sans-serif\" color=\"#".$Scor->font."\">Copyright ".$data->ano." © ".COPYRIGHT."</font></b></div></td></tr></table></div></center></body></html>"; }
?>
Codigo do ficheiro user.php
<?
/* $Id: user.php,v 1.4 29/04/2006 18:49:32 kingless Exp $ */
include("config.inc");
include("users.inc");
$email = $_POST['email'];
$nome = $_POST['nome'];
$user = $_POST['username'];
$senha = $_POST['password'];
$reg = $_POST['registrar'];
if(isset($reg) && !$user) {
die("$body"."Não foi inserido o username, $back");
} elseif(isset($reg) && !$senha) {
die("$body"."Não foi inserida a password, $back");
} elseif(isset($reg) && !$senha && !$user) {
die("$body"."Tem de inserir o username e a password, $back");
} elseif($_POST['registrar']) {
if(array_key_exists($user,$usuarios)) {
die("$body"."O Username que você escolheu já está registrado!!<br /><br />"."$back");
} elseif(!array_key_exists($user,$usuarios)) {
mail(EMAIL_ADMIN, "Novo Registro!!", "Nome: $nome\nEmail: $email\nUser: $user\nSenha: $senha","From: NovoRegitro@".$_SERVER['HTTP_HOST']."\nReply-To: NO-REPLY");
$arquivo = "users.inc";
@chmod($arquivo, "0600");
$abrir = fopen($arquivo, 'a+');
$escrever = '<? $usuarios'."[$user] = \"$senha\"; ?>";
fwrite($abrir, $escrever);
fclose($abrir);
if(isset($email)) {
mail($mail, "Registo!!", "Você foi registrado com sucesso\n\n\nDados:\n\nNome: $nome\nEmail: $email\nUser: $user\nSenha: $senha\n\n\nAdmin","From: Registo@".$_SERVER['HTTP_HOST']."\nReply-To: NAO-RESPONDER@OBRIGADO");
}
}
echo "$body".'Você Foi Registrado Com Sucesso!! Vai receber um email com todos dados.<br />';
echo "<br /><b>Username:</b> $user<br />";
echo "<b>Password:</b> $senha<br />";
echo "<br />Pode fazer o login quando quiser, Obrigado!!<br /><br /><b><a href=\"login.php\">Clique Aqui Para fazer o Login!!</a>";
} else {
if(REGISTRO == nao) {
echo $body;
die("Não é permitido novos registros, Contacte o Admin: ".EMAIL_ADMIN."");
} elseif(REGISTRO == sim) {
echo "<html>";
echo "<head><title>Novo Usuario</title></head>";
echo $body;
?>
<div align=\"center">
<table border="0" cellpadding="0" cellspacing="0" width="798" height="517" bgcolor="<?$cor->tbg?>"><tr>
<td valign="top" colspan="3" height="71">
<b></b></td></tr><tr>
<td> </td>
<td valign="top"> <form action="user.php" method="POST">
<p class="style1"><font face="Verdana" size="2"><b>Nome:</b></font></p>
<input name="nome" size="30" style="font-weight: 700" />
</font>
</p>
</p>
<p class="style1"><font face="Verdana" size="2"><b>Email:</b></font></p>
<input name="email" size="30" style="font-weight: 700" />
</font>
</p>
</p>
<p class="style1"><font face="Verdana" size="2"><b>Username:</b></font></p>
<input name="username" size="30" style="font-weight: 700" />
</font>
</p>
</p>
<p class="style1"><font face="Verdana" size="2"><b>Password:</b></font></p>
<input name="password" size="30" style="font-weight: 700" />
</font>
</p>
</p>
</font></p>
<p align="left"><font size="2" face="Verdana">
<input type="submit" name="registrar" value="Registrar!" style="font-weight: 700" /></td>
<td height="399"> </td>
</tr><tr>
<td width="55"> </td>
<td width="688" valign="top">
<p align="center"></a></td>
<td height="47" width="55"> </td></tr></table></div></body></html>
<?
}
}
?>
Codigo do ficheiro users.inc
<?
/* $Id: users.inc,v 1.4 21/04/2006 18:49:32 kingless Exp $ */
/* Aqui é onde tu vais adicionar os usuarios e as passwords */
/* Aqui embaixo tens 2 exemplos - Usuario: kingless Password: teste123 -- Usuario: webtuga Password: teste */
$usuarios = array(
"Admin" => "senha",
"kingless" => "teste123",
"webtuga" => "teste"
);
/* Para adicionar um Usuario é so adicionar uma linha Exemplo:
$usuarios = array(
"kingless" => "teste123",
"webtuga" => "teste",
"outro-user" => "outra-senha"
);
O ultimo usuario a ser adicionar, a linha nao pode ter "virgula" "," no fim */
?>
codigo do ficheiro config.inc
<?
/* $Id: config.inc,v 1.4 29/04/2006 18:49:32 kingless Exp $ */
/* So troque isto se souber o que está a fazer */
define(COPYRIGHT,"kingless"); // Nome que vai aparecer no "Copyright 2006 ...."
define(NOME_DO_SITE,"Teste"); // Nome do seu site
define(PAGINA,"http://www.mais-trafego.info"); // Nome do site ou pagina onde o usuario vai depois de fazer o login
define(REGISTRO,"sim"); // as pessoas que nao têm um user podem fazer o registo de um user ? sim ou nao
define(EMAIL_ADMIN,"blastelf@hotmail.com"); //Email do Admin do script
/* Configuração das cores do script - So mude se souber o que está a fazer */
$Scor->bg = "93887D"; //Cor de fundo do script "background"
$Scor->tbg = "36302A"; //Cor de fundo das tabelas
$Scor->bcor = "CDC9C4"; //Cor da borda das tabelas
$Scor->font = "CDC9C4"; //Cor da fonte do script
$Scor->texto = "CDC9C4"; //Cor do texto normal "default"
$Scor->link = "CDC9C4"; //Cor do texto dos links
$Scor->vlink = "CDC9C4"; //Cor do texto dos vlinks
$Scor->alink = "CDC9C4"; //Cor do texto dos alinks
/* Nao mudar nada que ta embaixo desta linha, se mudar a responsabilidade é sua ;) */
$data->ano = date("Y");
$data->dia = date("d");
$data->mes = date("m");
$body = "<body bgcolor=\"#".$Scor->bg."\" text=\"#36302A\" link=\"#".$Scor->link."\" vlink=\"#".$Scor->vlink."\" alink=\"#".$Scor->alink."\">";
$back = "<a href=\"javascript:history.go(-1);\"><< Voltar</a>";
?>
Ai esta a source code de todos ficheiros do meu script
Se alguem quiser melhorar o codigo eu agradecia, se encontrar alguma bug é so me contactar
Aceito Opiniões!!
Cumps