Ir para conteúdo
jxcostas

Perdido nos IF

Recommended Posts

Meu programa é um sistema de votação o aluno escolhe somente 1 curso e os dados da escolha do aluno vão para a

tabela inscricoes com esses dados:

($_GET['id'] . "',   (id do curso selecionado)
($_SESSION['nome_usuario']   (Nome do usuario logado)

($_SESSION['email']  (email do usuario logado)

 

(Até aqui tudo funcionando consigo inscrever o usuario e adicionar sua inscrição)

 

 

Queria colocar mais uma verificação para não deixar o aluno inscrever-se mas não estou conseguindo verificar se já existe email cadastrado na tabela (inscricoes) estou tentando utilizar $_SESSION para verificar se o email já votou podem me ajudar, fiquei meio perdido não estou lembrando se posso comparar com $_SESSION ou outra forma de validar.

 

 

<?php

session_start();
include_once("conexao.php");

//Verificar se está vindo a variável id pela URL
if (isset($_GET['id'])) {
    if (isset($_COOKIE['voto_cont'])) {
        $_SESSION['msg'] = "<div class='alert alert-danger'>Você não pode mais inscrever-se!</div>";
        header("Location: cursos.php");
    } else {

	//Pesquisar se o produto está cadastrado no banco de dados
        $result_prod = "SELECT * FROM produtos WHERE id ='" . $_GET['id'] . "'";
        $resultado_prod = mysqli_query($conn, $result_prod);
        if (($resultado_prod) AND ( $resultado_prod->num_rows != 0)) {
            $row_prod = mysqli_fetch_assoc($resultado_prod);
			

}
			
				
            //Verificar se o produto já tem 20 votos
            if ($row_prod['qnt_voto'] <= 19) {
                setcookie('voto_cont', $_SERVER['REMOTE_ADDR'], time() + 10);
                $result_produto = "UPDATE produtos SET qnt_voto=qnt_voto + 1 WHERE id ='" . $_GET['id'] . "'";
                $resultado_produto = mysqli_query($conn, $result_produto);
				
				//Verificar se já existe email na tabela inscricoes	
				
				$result_usuario = "SELECT id FROM inscricoes WHERE email='". $_SESSION['email'] ."'";
				$resultado_usuario = mysqli_query($conn, $result_usuario);
				if(($resultado_usuario) AND ($resultado_usuario->num_rows != 0)){
				$erro = true;
				$_SESSION['msg'] = "Este e-mail já está cadastrado";
				}
				

                //Inserir na tabela incricoes nome do curso selecionado, nome e email do usuario logado
                // var_dump($dados);
                $result1_usuario = "INSERT INTO inscricoes (nome_curso, nome_usuario, email) VALUES (
            '" . $_GET['id'] . "',
            '" . $_SESSION['nome_usuario'] . "',
            '" . $_SESSION['email'] . "'
            )";
                $resultado1_usario = mysqli_query($conn, $result1_usuario);


                if (mysqli_affected_rows($conn)) {
                    $_SESSION['msg'] = "<div class='alert alert-success'>Inscrição efetuada com sucesso!</div>";
                    header("Location: cursos.php");
                } else {
                    $_SESSION['msg'] = "<div class='alert alert-danger'>Erro ao inscrever-se!</div>";
                    header("Location: cursos.php");
                }
            } else {
                $_SESSION['msg'] = "<div class='alert alert-danger'>Você não pode mais inscrever-se, Limite de 20 vagas do curso !</div>";
                header("Location: cursos.php");
            }
        }
    } 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

jxcostas

Questão - Não estou conseguindo verificar se já existe email cadastrado na tabela (inscricoes)?

Resposta: Seu código possui um furo, veja o código que está abaixo e compare com o seu para ver as diferencás.

 

Código:

<?php
session_start();
include_once("conexao.php");

//Verificar se está vindo a variável id pela URL
if (isSet($_GET['id'])) {
    if (isSet($_COOKIE['voto_cont'])) {
        $_SESSION['msg'] = "<div class='alert alert-danger'>Você não pode mais inscrever-se!</div>";
        header("Location: cursos.php");
    } else {
        //Pesquisar se o produto está cadastrado no banco de dados
        $sql = "SELECT * FROM produtos WHERE id ='" . $_GET['id'] . "'";
        if ($select_prod = mysql_fetch_assoc(mysql_query($sql))) {
            echo "Curso cadastrado";
        } else {
            $_SESSION['msg'] = "<div class='alert alert-danger'>Curso não cadastrado em nossos sistema!</div>";
            header("Location: cursos.php");
            exit();
        }
    }
    //Verificar se o produto já tem 20 votos
    if ($select_prod['qnt_voto'] <= 19) {
        setcookie('voto_cont', $_SERVER['REMOTE_ADDR'], time() + 10);
        $sql = "UPDATE produtos SET qnt_voto=qnt_voto + 1 WHERE id ='".$_GET['id']."'";
        $update = mysql_query($sql);
        
        //Verificar se já existe email na tabela inscricoes    
        $sql = "SELECT id FROM inscricoes WHERE email='". $_SESSION['email'] ."'";
        if($select = mysql_fetch_assoc(mysql_query($sql))){
            $_SESSION['msg'] = "<div class='alert alert-danger'>Este e-mail já está cadastrado!</div>";
            header("Location: cursos.php");
            exit();
        } else {
            //Inserir na tabela incricoes nome do curso selecionado, nome e email do usuario logado
            // var_dump($dados);
            $sql = "INSERT INTO inscricoes (nome_curso, nome_usuario, email) VALUES ('".$_GET['id']."', '".$_SESSION['nome_usuario']."', '".$_SESSION['email']."')";
            $exec_insert = mysql_query($sql);
            if (!$exec_insert) {
                $_SESSION['msg'] = "<div class='alert alert-success'>Inscrição efetuada com sucesso!</div>";
                header("Location: cursos.php");
                exit();
            } else {
                $_SESSION['msg'] = "<div class='alert alert-danger'>Erro ao inscrever-se!</div>";
                header("Location: cursos.php");
                exit();
            }
        }
    } else {
        $_SESSION['msg'] = "<div class='alert alert-danger'>Você não pode mais inscrever-se, Limite de 20 vagas do curso !</div>";
        header("Location: cursos.php");
        exit();
    }
} else {
    $_SESSION['msg'] = "<div class='alert alert-danger'>O Curso não foi selecionado!</div>";
    header("Location: cursos.php");
    exit();
}

 

Se a minha resposta lhe foi útil não esqueça de avaliar o POST e de votar positivo.

Espero ter ajudado de alguma forma.

 

Att
Felipe Guedes Coutinho

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora

×

Informação importante

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