Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Dae galera, estou fazendo um cadastro de usuário, onde nem o CPF e o usuário podem ser iguais ao de outro cadastro. A única coisa que está faltando é ele "travar" o formulário caso esteja algo igual, até exibe os avisos na tela, mas passa. Creio ser um formulário que poderá ajudar muitos aqui, vejo vários tópicos de pessoas procurando um form com validação, esse parece ser uma boa alternativa se a gente conseguir corrigir esse problema.
Aqui vai a página do cadastro, que tem o javascript que valida:
<script type="text/javascript">
$(document).ready(function(){
$('#form1').validate({
rules:{
nome:{
required: true,
minlength: 3
},
cpf:{
required: true,
remote: 'includes/verifica.php?cmd=cpf'
},
cidade:{
required: true
},
endereco:{
required: true,
minlength: 3
},
email: {
required: true,
email: true
},
telefone: {
required: true,
telefone: true
},
login: {
required: true,
remote: 'includes/verifica.php?cmd=login'
},
senha: {
required: true
},
senha2:{
required: true,
equalTo: "#senha"
},
foto: "required"
},
messages:{
nome:{
required: "O campo nome é obrigatório.",
minlength: "O campo nome deve conter no mínimo 3 caracteres."
},
email: {
required: "O campo email é obrigatório.",
email: "O campo email deve conter um email válido."
},
senha: {
required: "O campo senha é obrigatório."
},
endereco: {
required: "O campo endereço é obrigatório."
},
cidade: {
required: "O campo cidade é obrigatório."
},
telefone: {
required: "O campo telefone é obrigatório."
},
cpf:{
required: 'O campo CPF é obrigatório',
remote: 'Este CPF já está em uso.'
},
login: {
required: "O campo usuário é obrigatório.",
remote: 'Este usuário já está em uso.'
},
senha: {
required: "O campo senha é obrigatório."
},
senha2:{
required: "O campo confirmação de senha é obrigatório.",
equalTo: "O campo confirmação de senha deve ser identico ao campo senha."
},
foto: "O campo foto é obrigatório."
}
});
});
</script>
</head>
<body>
<div id="corpo" align="center">
<h2>PREENCHA TODOS OS DADOS ABAIXO:</h2>
<div align="center" style="height:20px; margin-bottom:5px;">
<?php
if ($_GET["msg"] == "sucesso") {
echo "<script>window.alert('Cadastro Efetuado Com Sucesso!');</script><script>window.location='anunciar.php'</script>";
}
else if ($_GET["msg"] == "erro") {
echo "<script>window.alert('Campos obrigatórios não foram preenchidos!');</script></h3>";
}
?>
</div>
<form action="controle/valida.php?acao=cadastro" method="post" enctype="multipart/form-data" name="form1" id="form1" >
<table width="700" border="0" cellpadding="0" cellspacing="0">
<tr>
<td align="right" valign="top" class="text_form">NOME COMPLETO:</td>
<td align="left" valign="top"><input name="nome" type="text" id="nome" size="40" maxlength="40" /></td>
</tr>
<tr>
<td align="right" valign="top" class="text_form">CIDADE:</td>
<td align="left" valign="top"><select name="cidade" id="cidade" style="width:275px;">
<option value="Sobradinho" selected="selected">Sobradinho</option>
<option value="Arroio do Tigre">Arroio do Tigre</option>
<option value="Ibarama">Ibarama</option>
<option value="Segredo">Segredo</option>
<option value="Lagoa Bonita do Sul">Lagoa Bonita do Sul</option>
<option value="Tunas">Tunas</option>
<option value="Salto do Jacuí">Salto do Jacuí</option>
<option value="Estrela Velha">Estrela Velha</option>
</select>
</td>
</tr>
<tr>
<td align="right" valign="top" class="text_form">ENDEREÇO:</td>
<td align="left" valign="top"><input name="endereco" type="text" id="endereco" size="40" maxlength="40" /></td>
</tr>
<tr>
<td align="right" valign="top" class="text_form">CPF:</td>
<td align="left" valign="top"><input name="cpf" type="text" id="cpf" size="40" maxlength="40" /></td>
</tr>
<tr>
<td align="right" valign="top" class="text_form">TELEFONE:</td>
<td align="left" valign="top"><input name="telefone" type="text" id="telefone" size="40" maxlength="40" /></td>
</tr>
<tr>
<td align="right" valign="top" class="text_form">EMAIL:</td>
<td align="left" valign="top"><input name="email" type="text" id="email" size="40" maxlength="40" /></td>
</tr>
<tr>
<td width="182" align="right" valign="top" class="text_form">USUÁRIO: </td>
<td width="548" align="left" valign="top">
<input name="login" type="text" id="login" size="40" maxlength="40">
</td>
</tr>
<tr>
<td align="right" valign="top" class="text_form">SENHA: </td>
<td align="left" valign="top">
<input name="senha" type="password" id="senha" size="40" maxlength="40">
</td>
</tr>
<tr>
<td align="right" valign="top" class="text_form">CONFIRMA SENHA:</td>
<td align="left" valign="top"><input name="senha2" type="password" id="senha2" size="40" maxlength="40" /></td>
</tr>
<tr>
<td align="right" valign="top" class="text_form">FOTO:</td>
<td align="left" valign="top"><input type="file" name="foto" id="foto" /></td>
</tr>
</table>
<br>
<br>
<input id="Cadastrar" name="Cadastrar" type="submit" value="Cadastrar"> <input id="bt" name="Limpar" type="reset" value="Limpar">
</form>
e a página que faz a inserção:
$login = anti_injection($_POST['login']);
$senha = anti_injection($_POST['senha']);
$senha1 = md5($senha);
$caminho="../imagens/fotos/";
$arq1=rand(0,9999).'.jpg';
$path = $caminho.$arq1;
$up = uploadJPEGthmb($_FILES[foto],$path);
if(isset($login) && isset($senha) && $login != ""){
mysql_query("INSERT INTO logins (id, login, senha, nome, endereco, cidade, telefone, cpf, email, foto) VALUES (NULL, '$login', '$senha1', '".$_POST[nome]."', '".$_POST[endereco]."', '".$_POST[cidade]."', '".$_POST[telefone]."', '".$_POST[cpf]."', '".$_POST[email]."', '".$arq1."')") or die(mysql_error());
header("Location: ../cadastrar.php?msg=sucesso"); }
else {
header("Location: ../cadastrar.php?msg=erro");
E a página que verifica o usuário e o cpf:
<?php
if ($_GET[cmd] == 'cpf') {
//Recebe os elementos via GET
$campo = $_GET[cpf];
//Aqui você verifica em seu banco de dados, se o login já foi cadastrado.
require_once("conexao.php");
$sql = ("SELECT * FROM logins WHERE cpf = '".$campo."'");
$query = mysql_query($sql);
$dados = mysql_fetch_array($query);
$cpf = $dados[cpf];if( $campo == $cpf )
//Se o login já existir você exibe false
echo 'false'; echo 'true';
exit();
}
if ($_GET[cmd] == 'login') {//Aqui você verifica em seu banco de dados, se o login já foi cadastrado.
require_once("conexao.php");
$sql = ("SELECT * FROM logins WHERE login = '".$campo."'");
$query = mysql_query($sql);
$dados = mysql_fetch_array($query);
$login = $dados[login];if( $campo == $login )
//Se o login já existir você exibe false
echo 'false'; echo 'true';
exit();
}Carregando comentários...