Ir para conteúdo

POWERED BY:

Arquivado

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

SkyeLeffer

Php erro ao cadastrar no phpmyadmin

Recommended Posts

Olá.
estou tentando montar um site, sou noob e não está gravando no banco de dados. Aparece o seguinte erro:

Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in C:\wamp64\www\Bon-Network\classes\Cadastro.class.php on line 14

O QUE ESTOU FAZENDO ERRADO? ME AJUDEM '-'

Cadastro.class.php abaixo:

<?php
	class Cadastro{
		public function cadastrar($nome, $end, $dt_nasc, $email, $cidade, $cep, $senha){
			//tratamento das variaveis
			$nome=ucwords(strtolower($nome));
			$end=ucwords(strtolower($end));
			$dt_nasc=ucwords(strtolower($dt_nasc));
			$email=ucwords(strtolower($email));
			$cidade=ucwords(strtolower($cidade));
			$cep=ucwords(strtolower($cep));
			$senha=sha1($senha."mercadoBon");
			//inserção no banco de dados
			$validaremail=mysql_query("SELECT * FROM usuario WHERE email'$email'");
			$contar=mysql_num_rows($validaremail);
			if($contar==0){
			$insert=mysql_query("INSERT INTO usuario(nome,end,dt_nasc,email,cidade,cep,senha,nivel,status)VALUES('$nome,$end,$dt_nasc,$email,$cidade,$cep,$senha,1,1')");
			}else{
				$flash="E-mail já cadastrado em nosso banco de dados!";
			}
			if(isset($insert)){
				$flash="Cadastro realizado com sucesso";
			}else{
				if(empty($flash)){	
				$flash="Ops! Houve um erro em nosso sistema, contate o administrador.";
				}
			}
			//retorno para o usuário
			echo $flash;
		}
	}
?>

header.php abaixo:

<?php
error_reporting (E_ALL & ~ E_NOTICE & ~ E_DEPRECATED);
//Globais
$home="http://localhost/Bon-Network/index.php";
$title="Mercado Coletivo - BON";
$startaction="";
$msg="";
if(isset($_GET["acao"])){
	$acao=$_GET["acao"];
	$startaction=1;
}

//Include das classes 
include("classes/DB.class.php");
include("classes/Cadastro.class.php");
include("classes/Logar.class.php");

//Conexao com o banco de dados

$conectar=new DB;
$conectar=$conectar->conectar();

//Cadastro
if($startaction==1){
	if($acao=="cadastrar"){
		$nome=$_POST["nome"];
		$end=$_POST["end"];
		$dt_nasc=$_POST["dt_nasc"];
		$email=$_POST["email"];
		$cidade=$_POST["cidade"];
		$cep=$_POST["cep"];
		$senha=$_POST["senha"];
		
		if(empty($nome)||empty($end)||empty($dt_nasc)||empty($email)||empty($cidade)||empty($cep)||empty($senha)){
			$msg="Preencher todos os campos!";  
		//todos os campos preenchidos
		}else{
			//e-mail valido
			if(filter_var($email,FILTER_VALIDATE_EMAIL)){
				if(strlen($senha)<8){
					$msg="Senha deve ter no mínimo oito caracteres!";
				}else{
					//executa a classe de cadastro
					$conectar=new Cadastro;
					echo"<div class=\"flash\">";
					$conectar=$conectar->cadastrar($nome, $end, $dt_nasc, $email, $cidade,$cep, $senha);
					echo"</div>";
				}
			}
			//e-mail invalido
			else{
				$msg="Digite seu e-mail corretamente!";
			}
		}
	}
}
//metodo de login
if($startaction==1){
	if($acao=="logar"){
		//dados
		$email=addcslashes($_POST["email"]);
		$senha=addcslashes(sha1($_POST["senha"]."mercadoBon"));
		
		if(empty($email)||empty($senha)){
			$msg="Preencha todos os campos!";
		}else{
			if(filter_var($email,FILTER_VALIDATE_EMAIL)){
				$msg="Digite seu e-mail corretamente!";
			}else{
				//executar a buscar pelo usuario
				$login=new Login;
				$login=$login->logar($email,$senha);
			}
		}
	}
}

//variaveis de estilo
if(empty($msg)){
	$display="$display:none;";
}else{
	$display="$display:block;";
}
?>

Cadastrar.php abaixo:

<?php
include("includes/header.php");
?>

<!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>Cadastrar</title>
<link href="https://fonts.googleapis.com/css?family=Oswald:300,400,700" rel="stylesheet"/>
<link rel="stylesheet" type="text/css" href="css/style.css"/>
</head>
<div class="logo"><a href="<?php echo $home;?> " title="<?php echo $title;?>"><img src="image/logo.png" alt="<?php echo $title;?>" title="<?php echo $title;?>" width="260" height="100"/></a></div>

<body>
<div id="cadastrar"><a href="login.php" title="Faça seu login!"> Login»</a></div>
   	<div id="login" class="form bradius" style="top:30px">
    	<div class="message bradius" style="<?php echo $display; ?>"><?php echo $msg;?></div>
        <div class="acomodar">
        	<form action="?acao=cadastrar" method="post">
            <label for="nome">Nome: </label><input id="nome" type="text" class="txt bradius" name="nome" />
            <label for="end">Endereço: </label><input id="end" type="text" class="txt bradius" name="end" />
            <label for="dt_nasc">Data de Nascimento: </label><input id="dt_nasc" type="date" class="txt bradius" name="dt_nasc" />
            <label for="cidade">Cidade: </label><input id="cidade" type="text" class="txt bradius" name="cidade" />
            <label for="cep">Cep: </label><input id="cep" type="text" class="txt bradius" name="cep" />
            <label for="email">E-mail: </label><input id="email" type="text" class="txt bradius" name="email" />
            <label for="senha">Senha: </label><input id="senha" type="password" class="txt bradius" name="senha" />
            <input type="submit" class="sb bradius" value="Cadastrar"/> 
            </form>
        <!--acomodar-->
        </div>	
        <!--login-->
</div>
</body>
</html>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bem-vindo ao fórum! :)
Recomendo que leia as regras e orientações de participação

mysql_query falhou e retornou false.

é o mesmo erro que explico em detalhes aqui: http://rberaldo.com.br/as-mensagens-de-erros-mais-comuns-do-php/#mysql_result_resource

faça debug. use mysql_error

PS: funções mysql_* estão obsoletas desde o PHP 5.5 e já foram removidas no PHP 7. Prefira usar MySQLi ou PDO. Veja mais aqui: http://rberaldo.com.br/mysql-obsoleto-php/

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.