Bom, vou ensinar em poucos passos a criar um script de registro com encriptação de senha por md5.
1° - passo: Criar o documento de configuração (salve como config.php):
Código PHP:
$server = "Host do MySql";
$user = "Usuário do MySql";
$password = "Senha do MySql";
$database = "Banco de dados";
$db = mysql_connect($server, $user, $password) or die ("Falha na conexão");
mysql_select_db($database) or die ("Database inválido");
2° passo: Criar o formulário. (Salve como index.php) (Detalhe: ao criar o arquivo insira a função para incluir o arquivo config.php - include ("config.php"); - ):
Código HTML:
<form method="post" name="cadastra" action="cadastra.php">
<table align="center" cellpadding="2" cellspacing="2">
<tr>
<td id="tdsn" align="right">Login:</td>
<td id="tds" align="left" colspan="3"><input type="text" name="user" size="20"></td>
</tr>
<tr>
<td id="tdsn" align="right">Senha:</td>
<td id="tds" align="left" colspan="3"><input type="password" name="pass" size="20"></td>
</tr>
<tr>
<td id="tdsn" align="right">Confirmar senha:</td>
<td id="tds" align="left" colspan="3"><input type="password" name="repass" size="20"></td>
</tr>
<tr>
<td align="center" id="tdsn" colspan="4"><input type="submit" value="Confirmar" name="inclui"></td>
</tr>
</table>
</form>
3° passo: Criar o script para encriptar e enviar os dados ao banco de dados (Salve como cadastra.php):
Código PHP:
$contalogin = mysql_query ("SELECT * FROM accounts WHERE login = '".$_POST['user']."'"); // Verifica se o username informado já está cadastrado
$rowcontalogin = mysql_num_rows($contalogin);
if ($rowcontalogin == 1 || $rowcontalogin >= 1) {echo "<font color='red'>Erro: Usuário já cadastrado!</font>"; } // Se o username já estiver registrado mostra o erro
else { // Se o username nao estiver cadastrado, inicia a operação para inserir os dados
$senha = md5($_POST['pass']); // Encriptando a senha
mysql_query ("INSERT INTO accounts (login, senha) VALUES ('".$_POST['user']."', '".$senha."')"); // Insere os dados
echo "<script>alert('Login ".$_POST['user']." registrado com sucesso');location='index.php'</script>"; // Após registrar, exibe a mensagem de confirmação
} // Fecha inserção de dados
mysql_close($db); // Fecha a conexão com o banco de dados
Note que para fazer a encriptação, foi usada a função md5(), que funciona da seguinte maneira:
→ $senha = md5($_POST['pass']); - Encripta o valor digitado no campo pass ($_POST['pass'])e transforma o valor em um valor ($senha), para depois então inserir o valor final da encriptação:
Código PHP:
mysql_query ("INSERT INTO accounts (login, senha) VALUES ('".$_POST['user']."', '".$senha."')");
SQL da tabela accounts:
Código:
SET FOREIGN_KEY_CHECKS=0;
-- ----------------------------
-- Table structure for accounts
-- ----------------------------
DROP TABLE IF EXISTS `accounts`;
CREATE TABLE `accounts` (
`id` int(11) NOT NULL auto_increment,
`login` varchar(255) default NULL,
`senha` varchar(255) default NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=latin1;
Dúvidas, é só postar =)
Créditos do tutorial: mend3