Ir para conteúdo
Fórum Script Brasil
  • 0

Validaçao de dados em banco


Rogger William

Pergunta

Bom pessoal, estou precisando fazer o seguinte:

Promoção de descontos para clientes na qual funcionará assim, o cliente vai receber uma carta em casa com um código(Cupom desconto), do qual ele deverá entrar no site e validar esse código para obter o desconto. Basicamente é isso.

Como vai funcionar no site:

-O cliente vai entrar para cadastrar seu cupom contendo o código a ser usado. Ele vai fazer um cadastro pessoal com seus dados pessoais inicialmente. Na área de seu acesso restrito à sua conta, ele vai ter que Validar seu cupom. Essa validação deverá acontecer da seguinte forma: O Cliente insere o código no campo e clicar em cadastrar.

O sistema vai ter que identificar se esse código é válido, se existe(Já inseridos previamente em um banco de dados). Caso exista no banco, ele vai validar para o usuário. Caso não exista o código inserido, vai retornar uma mensagem de erro de código inválido. Caso já tenha sido utilizado, vai retornar uma mensagem de que o código já foi utilizado.

Bom basicamente é isso que preciso. Se alguém puder me ajudar fico agradecido.

Para quem quiser verificar, o cadastro de usuário estou fazendo devagar, está com alguns erros que estou tentando corrigir, mas segue o link: http://www.mesocorre.com.br/cadastro/formulario_cadastro2

Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0

Bom eu fiz aqui rapidinho um código que deve te ajudar!

Primeiro vamos fazer uma função pra gerar um código de 10 dígitos numéricos.

Ela irá gerar o código e irá gravar em uma tabela!

$gerar_codigo = mt_rand(0000000000, 9999999999);
    $pegar_valor = intval($gerar_codigo);
    
    if(mysql_query("INSERT INTO tb_descontos (codigo) VALUES ('". $pegar_valor ."') "))
    {
        echo "O código gerado foi: ". $pegar_valor ."";
    }
Agora fazemos o formulário de cadastro pra pessoa que tem o código de desconto!
<form action="validar_codigo.php" method="post">
    Nome:
    <input type="text" name="nome"><br>
    Senha:
    <input type="password" name="senha"><br>
    Emai:
    <input type="text" name="email"><br>
    Digite o código:
    <input type="text" name="codigo"><br>
    <input type="submit" value="Validar">
</form>
E por ultimo iremos fazer o código que irá verificar se o código que a pessoa tem é valido ou não
$nome = $_POST['nome'];
    $senha = $_POST['senha'];
    $email = $_POST['email'];
    $cod = $_POST['codigo'];
    
    $sql = mysql_query("SELECT * FROM tb_descontos WHERE codigo = '". $cod ."'");
    $contar = mysql_num_rows($sql);
    
    if((!$nome) || (!$senha) || (!$email) || (!$cod))
    {
        echo "Preencha todos os campos corretamente!";
    }
        else
    {
        if($contar == 0)
        {
            echo "O Código digitado é invalido!";
        }
            else
        {
            if(mysql_query("INSERT INTO tb_cadastrados (id, Nome, Senha, Email, Desconto) VALUES ('NULL', '". $nome ."', '". $senha ."', '". $email ."', '". 1 ."')"))
            {
                if(mysql_query("DELETE FROM tb_descontos WHERE codigo = '". $cod ."'"))
                {
                    echo "Cadastro concluido com sucesso";
                }
            }
        }
    }

Vou explicar oque acontece acima!

Quando a pessoa clicar em cadastrar na pagina do formulário, a primeira coisa que o código irá fazer é verificar se os campos estão vazios, após isso ele irá contar quantos registros tem na tabela 'tb_descontos' com aquele código digitado pela pessoa!

Se tiver 0 registros ele irá quebrar a função ali e irá mostrar a mensagem de erro.

Se o código for válido o cadastro da pessoa irá ser concluído, e por ultimo o código irá deletar o registro daquele código de desconto da tabela 'tb_descontos', fazendo assim com que o mesmo código não venha ser usado outras vezes!

Na função que insere os dados da pessoa como novo cadastro na tabela, perceba que eu coloquei um campo ali 'Desconto' e ele irá receber o valor ' 1 ' , ou seja! se 1 o desconto está ativo para esta pessoa se ' 0 ' não está ativo, claro essa foi a ideia que tive, você pode usar outros valores , ou até mesmo a própria quantidade da % de desconto!

bom acho que é isso, espero ter ajudado!

Link para o comentário
Compartilhar em outros sites

  • 0
Bom eu fiz aqui rapidinho um código que deve te ajudar!

Primeiro vamos fazer uma função pra gerar um código de 10 dígitos numéricos.

Ela irá gerar o código e irá gravar em uma tabela!

Vou explicar oque acontece acima!

Quando a pessoa clicar em cadastrar na pagina do formulário, a primeira coisa que o código irá fazer é verificar se os campos estão vazios, após isso ele irá contar quantos registros tem na tabela 'tb_descontos' com aquele código digitado pela pessoa!

Se tiver 0 registros ele irá quebrar a função ali e irá mostrar a mensagem de erro.

Se o código for válido o cadastro da pessoa irá ser concluído, e por ultimo o código irá deletar o registro daquele código de desconto da tabela 'tb_descontos', fazendo assim com que o mesmo código não venha ser usado outras vezes!

Na função que insere os dados da pessoa como novo cadastro na tabela, perceba que eu coloquei um campo ali 'Desconto' e ele irá receber o valor ' 1 ' , ou seja! se 1 o desconto está ativo para esta pessoa se ' 0 ' não está ativo, claro essa foi a ideia que tive, você pode usar outros valores , ou até mesmo a própria quantidade da % de desconto!

bom acho que é isso, espero ter ajudado!

Bom, estou testando o código, mas acaba por não me apresentar nenhuma mensagem de cadastro nem erro e os dados não são inseridos na tabela.

http://mesocorre.com.br/cadastro2/form

O gerador de código funciona, ele gera e insere o código gerado na tabela.

http://mesocorre.com.br/cadastro2/gerar_codigo.php

Minha tabela está assim:

CREATE TABLE tb_cadastrados( 
     nome SMALLINT ( 20 ) UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
         email VARCHAR(32) NOT NULL UNIQUE,
         senha VARCHAR ( 20 ) NOT NULL,
         codigo VARCHAR ( 10 ) NOT NULL,
     cod VARCHAR ( 10 ) NOT NULL
     
); 


CREATE TABLE tb_descontos (
    
    codigo VARCHAR ( 10 ) NOT NULL,
    cod VARCHAR ( 10 ) NOT NULL
    
);

Editado por Rogger William
Link para o comentário
Compartilhar em outros sites

  • 0

:wacko: Achei muito bom esse script mas comigo acontece a mesma cois, ou seja, consigo gerar o codigo mas não consigo validar o form...help me!!! Seria perfeito se funcionasse, pois um meu cliente que utilizza coupons deve haver um espaco para o inserimento do codigo , (e o codigo não è gerado por mim mas pela sociedade de coupons e devo inserir tais codigos antes que o cliente acesse o site) alguém sabe como me ajudar? Obrigado...

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,5k
×
×
  • Criar Novo...