← Desenvolvimento

Login Script Source Code.

Lida 5384 vezes

Offline

kingless 
Membro
Mensagens 857 Gostos 0
Troféus totais: 27
Trófeus: (Ver todos)
Super Combination Combination Topic Starter Poll Voter Poll Starter Level 5 Level 4 Level 3 Level 2 Level 1

Eu como não gosto de guardar os meus codigos de PHP vou publicar aqui o codigo do meu script!!  :lol:

Ficheiros
login.php, user.php, users.inc, config.inc

Codigo do ficheiro login.php
Código: [Seleccione]

<?
/* $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." &copy; ".COPYRIGHT."</font></b></div></td></tr></table></div></center></body></html>"; }
?>



Codigo do ficheiro user.php
Código: [Seleccione]

<?
/* $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>&nbsp;</td>
<td valign="top">&nbsp;<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">&nbsp;</td>
</tr><tr>
<td width="55">&nbsp;</td>
<td width="688" valign="top">
<p align="center"></a></td>
<td height="47" width="55">&nbsp;</td></tr></table></div></body></html>
<?
}
}
?>



Codigo do ficheiro users.inc
Código: [Seleccione]

<?
/* $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
Código: [Seleccione]

<?
/* $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);\">&lt;&lt;&nbsp;Voltar</a>";
?>


Ai esta a source code de todos ficheiros do meu script  :wink:

Se alguem quiser melhorar o codigo eu agradecia, se encontrar alguma bug é so me contactar  :lol:

Aceito Opiniões!! :lol:

Cumps
Offline

fpware 
Fundador
Mensagens 15318 Gostos 7
Troféus totais: 38
Trófeus: (Ver todos)
Linux User Mobile User Level 6 Super Combination Combination Topic Starter 10 Poll Votes Poll Voter Poll Starter Level 5

Muito obrigado kingless! :D

Este é o sistema que é comentado aqui:

http://forum.maistrafego.pt/index.php?topic=3316
Offline

asturmas 
Administrador
Mensagens 19734 Gostos 50
Feedback +2

Troféus totais: 39
Trófeus: (Ver todos)
Mobile User Windows User Super Combination Combination Topic Starter 100 Poll Votes 50 Poll Votes 10 Poll Votes Poll Voter Poll Starter

Parabens!
Offline

ptrci 
Membro
Mensagens 144 Gostos 0
Troféus totais: 25
Trófeus: (Ver todos)
Super Combination Combination Topic Starter Poll Voter Level 5 Level 4 Level 3 Level 2 Level 1 100 Posts

Esta muito bom parabens.
Offline

kingless 
Membro
Mensagens 857 Gostos 0
Troféus totais: 27
Trófeus: (Ver todos)
Super Combination Combination Topic Starter Poll Voter Poll Starter Level 5 Level 4 Level 3 Level 2 Level 1

Nova versão do script está a caminho!!
Nessa nova versão vou utilizar PHP, MySQL e SESSION!!

Acho que vai ficar muito melhor e mais seguro, apesar que é mais dificil programar principalmente para mim que não sei mecher muito bem com PHP e MySQL!! Se alguem quiser ajudar a programar eu agradecia.

Cumps
Offline

ptrci 
Membro
Mensagens 144 Gostos 0
Troféus totais: 25
Trófeus: (Ver todos)
Super Combination Combination Topic Starter Poll Voter Level 5 Level 4 Level 3 Level 2 Level 1 100 Posts

Estive a esprimentar o    Login Script Source Code do kingless.

E funciona a 100%. Sem problemas.