Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

www.centralcsfull.net

Sistema de cadatro para sorteio.

Recommended Posts

Pessoal, sou meio(ou melhor, completamente) leigo em php, no meu site, estou pretendendo fazer um sorteio, queria saber como crio o script em php e mysql que tipo, o cliente ia acessar a pagina de cadastro (cadastro.php) lá ele vai preencher os campos: Nome, Sobrenome, Idade, email, uma pergunta qualquer que eu quiser fazer, Cidade, Estado e numero do cadastro(no sorteio vai ser soteado pelo numero). então, cada usuario so vai poder fazer um cadastro, ai tipo, to querendo saber, quando o usuario colocar tudo la, vai verificar o ip, e cadastrar junto as outras informações, e se o email e ip nao tiver sido cadastrado, ele recebe uma mensagem de confirmação. depois, o sistema de sorteio, ele vai sortear pelo numero do cadastro.

 

Resumindo, um script, a pessoa coloca tudo la e ele clica em confirmar, automaticamente cadastra junto o ip, ai se ele tenta cadastrar de novo, vai falar que o ip ou email ja foi cadastrado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vamos com calma. Apresente o que você já TENTOU fazer, para que possamos ir moldando este sistema.

Nosso objetivo é ajudar, e não criar.

 

Já tens o ambiente de produção adequado? Já fizeste as conexões com BD? Criação de tabelas? Tens o layout dos formulários de registro em HTML?

 

Até mais.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Apesar de achar que o correto não é passar scripts prontos e sim ajudar a fazer, resolvi te dar uma força.

 

Mais nas próximas tente fazer ok?

 

1º Crie a tabela no banco de dados:

 

CREATE TABLE IF NOT EXISTS `cadastro` (
  `id` int(11) NOT NULL auto_increment,
  `nome` varchar(100) NOT NULL,
  `sobrenome` varchar(300) NOT NULL,
  `dia` varchar(2) NOT NULL,
  `mes` varchar(2) NOT NULL,
  `ano` varchar(4) NOT NULL,
  `email` varchar(100) NOT NULL,
  `cidade` varchar(100) NOT NULL,
  `resposta` varchar(100) NOT NULL,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;

2º cadastro.html - Formulário para cadastro:

 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Cadastro para Sorteio</title>
<style type="text/css">
.formulario{width:300px; height:300px;}
.formulario label{display:block; font-family:Verdana, Geneva, sans-serif; font-size:13px; width:300px; color:#000; margin-bottom:3px;}
.campo{width:300px; margin-bottom:3px; display:block;}
.data{float:left; width:80px; margin-bottom:3px;  margin-right:10px;}
.linhadata{width:300px; display:block; height:25px;}
</style>
</head>

<body>
<form action="scriptcadastro.php" method="post" class="formulario">
<label for="nome">Nome:</label><input type="text" class="campo" name="nome" id="nome" />
<label for="sobrenome">Sobrenome:</label><input type="text" class="campo" name="sobrenome" id="sobrenome" />
<label for="dia">Data de Nascimento: (dia/mês/ano)</label>
<div class="linhadata">
<input type="text" class="data" maxlength="2" name="dia" id="dia" />
<input type="text" class="data" maxlength="2" name="mes" id="mes" />
<input type="text" class="data" maxlength="4" name="ano" id="ano" />
</div>
<label for="email">E-mail:</label><input type="text" class="campo" name="email" id="email" />
<label for="cidade">Cidade:</label><input type="text" class="campo" name="cidade" id="cidade" />
<label for="resposta">Quem é o atual Presidente da República:</label>
<input type="text" class="campo" name="resposta" id="resposta" />


<input type="submit"  value="cadastrar" />
</form>
</body>
</html>

3º scriptcadastro.php - Script que faz o cadastro no banco de dados:

 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Script para cadastro</title>
</head>

<body>
<?
//Conexao com o banco de dados
$conexao = mysql_connect("localhost", "SEULOGINDOMYSQL", "SUASENHA") or die ("Não foi possivel conectar ao servidor MySQL");
mysql_select_db("NOMEDOBANCODEDADOS",$conexao) or die(mysql_error());


 //Função anti sql Injection que não permite que seja introduzido strings de consulta ao banco de dados
 function anti_injection($sql)
 {

 $sql = preg_replace(sql_regcase("/(from|select|insert|delete|where|drop table|show tables|#|\*|--|\\\\)/"),"",$sql);
 $sql = trim($sql);
 $sql = strip_tags($sql);
 $sql = addslashes($sql);
 return $sql;
 }
 function recebepost($post)
 {
 $post = anti_injection($_POST[$post]);
 return $post; 	 
 }
 
 
//Recebe os posts do formulario 
$nome = anti_injection($_POST['nome']);
$sobrenome = anti_injection($_POST['sobrenome']);
$dia = anti_injection($_POST['dia']);
$mes = anti_injection($_POST['mes']);
$ano = anti_injection($_POST['ano']);
$email = anti_injection($_POST['email']);
$cidade = anti_injection($_POST['cidade']);
$resposta = anti_injection($_POST['resposta']);

//cadastra os dados recebidos no banco de dados
$add = "INSERT INTO cadastro (nome, sobrenome, dia, mes, ano, email, cidade, resposta) VALUES('$nome', '$sobrenome', '$dia', '$mes', '$ano', '$email', '$cidade', '$resposta');";
$query = mysql_query($add);

//Exibe uma mensagem que foi cadastrado
echo "Seu cadastro foi relizado com sucesso.";


?>
</body>
</html>

4º sorteio.php - Script que realiza o sorteio:

 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Sorteio</title>
</head>

<body>
<?
//Conexao com o banco de dados
$conexao = mysql_connect("localhost", "SEULOGINDOMYSQL", "SUASENHA") or die ("Não foi possivel conectar ao servidor MySQL");
mysql_select_db("NOMEDOBANCODEDADOS",$conexao) or die(mysql_error());

//Aqui que acontece o "Sorteio" utilizando a função do mysql RAND() que escolhe aleatoriamente um registro
$sel="SELECT * FROM cadastro ORDER BY RAND() LIMIT 1,1";
$query = mysql_query($sel);
$busca = mysql_fetch_array($query);

//Faz a busca dos dados do sorteado
$id = $busca['id'];
$nome = $busca['nome'];
$sobrenome = $busca['sobrenome'];
$dia = $busca['dia'];
$mes = $busca['mes'];
$ano = $busca['ano'];
$email = $busca['email'];
$cidade = $busca['cidade'];
$resposta = $busca['resposta'];

//Exibe o sorteado
echo "Número sortiado: ".$id."<br>Nome: ".$nome." ".$sobrenome."<br>Data de Nascimento: ".$dia." ".$mes." ".$ano."<br>E-mail: ".$email."<br>Cidade: ".$cidade."<br>Quem é o atual Presidente da República: ".resposta."";
 
?>
</body>
</html>

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.