Jump to content
Jack Oliveira

[RESOLVIDO] ERRO ao fazer cadastro

Recommended Posts

Ola pessoal bom dia 

Bom estou tentando fazer um formulario de cadastros

com ajax

 

mais sempre me retorna o erro uma msg que definir caso não esteja fazendo

Houve um erro ao fazer o seu cadastro, tente novamente!

 

 

Mais já olhei tudo que podia não há porque dar erro pois esta sendo colocando os campos certos para cadastrar

 

No Ajax esta da seguinte forma

<script>
	$(function(){
		$('.form').submit(function(){
			$('.loading').html("<img src='loading.gif' width='45'>");
			$.ajax({
				url: '<?= ConfigPainel('site_url');?>controlers/cadastro_empresa_users.php',
				type: 'POST',
				data: $('.form').serialize(),
				success: function(data){
					$('.mostrar').html(data);
					$('.loading').hide();
					$('.form')[0].reset();
				}
			});
			return false;
		});
	});
</script>

no html no form fiz assim pegando a class form do ajax creio que não há nada de errado aqui

<form action="" method="post" enctype="multipart/form-data" class="form">

 

no php esta assim

 

<?php 
	header('Access-Control-Allow-Origin: *');
    require_once ('../admin/database/config.php');
  require_once ('../admin/database/config.database..php');
  require_once ('../admin/database/config.session.php');
  require_once ('../admin/includes/funcoes.php');

if($_POST){
	
	if(empty($_POST['user_name']) || empty($_POST['user_lastname']) || empty($_POST['user_email']) || empty($_POST['user_telefone']) || empty($_POST['user_password']) || empty($_POST['user_plano']) || empty($_POST['nome_empresa']) || empty($_POST['nome_empresa_link'])){
		echo '<script>
			$(document).ready(function(){
				swal("Ops...","Preencha todos os campos obrigatórios!","warning");
			});
			</script>';
	}else{
		       // INICIO PASSANDO PARA ARRAY DO USUARIO.

		    	$user_name     = post('user_name');
		    	$user_lastname = post('user_lastname');
		    	$user_email    = post('user_email');
		    	$user_telefone = post('user_telefone');
		    	$user_password = md5(post('user_password'));
		    	$user_plano    = post('user_plano');
		    	$user_level    = 3;
		    	$user_registration = date('Y-m-d H:i:s');				
		    	// FIM ARRAY DO USUARIO.
				
  $QueryC = DBRead('configuracoes_site','*'); if (is_array($QueryC)) { foreach ($QueryC as $CONF) {
	  //Teste
	 $DiasDeTeste = $CONF['dias_testes']; 
	 //Plano 1
	 $nome_plano_um = $CONF['nome_plano_um'];
	 $v_plano_um = $CONF['v_plano_um'];
	 $dias_plano_um = $CONF['dias_plano_um'];
	 //Plano 2
	 $nome_plano_dois = $CONF['nome_plano_dois'];
	 $v_plano_dois = $CONF['v_plano_dois'];
	 $dias_plano_dois = $CONF['dias_plano_dois'];
	 //Plano 3
	 $nome_plano_tres = $CONF['nome_plano_tres'];
	 $v_plano_tres = $CONF['v_plano_tres'];
	 $dias_plano_tres = $CONF['dias_plano_tres'];	 
  }}
		    	//INICIO PASSANDO PARA  ARRAY DA EMPRESA
		    	$nome_empresa = post('nome_empresa');
		    	$nome_empresa_link = post('nome_empresa_link');
		    	$end_uf_empresa = post('end_uf_empresa');
		    	$cidade_empresa = post('cidade_empresa');
		    	$end_bairro_empresa = post('end_bairro_empresa');
		    	$end_rua_n_empresa = post('end_rua_n_empresa');
		    	$email_empresa = post('user_email');
		    	$telefone_empresa = preg_replace("/[^0-9]/", "", post('user_telefone'));
		    	$empresa_data_renovacao = date("Y-m-d", strtotime("+{$DiasDeTeste} days"));
  
  $QueryE = DBRead('estados','*',"WHERE id='{$end_uf_empresa}'"); if (is_array($QueryE)) { foreach ($QueryE as $ES) {
	 $uf_empresa = $ES['sigla']; 
  }}
  		
		
  $QueryU = DBRead('ws_users','*',"WHERE user_plano='{$user_plano}'"); if (is_array($QueryU)) { foreach ($QueryU as $USER) {
	 $UserPlano = $USER['user_plano']; 
  }}		
				switch ($UserPlano) {
					case '1':
						$Planos = $nome_plano_um;
						$Valor = 'R$:'.$v_plano_um.'';
						$Dias = 'Assinatura de  '.$dias_plano_um.' dias';
					break;

					case '2':
						$Planos = $nome_plano_dois;
						$Valor = 'R$:'.$v_plano_dois.'';
						$Dias = 'Assinatura de '.$dias_plano_dois.' dias';
					break;

					case '3':
						$Planos = $nome_plano_tres;
						$Valor = 'R$:'.$v_plano_tres.'';
						$Dias = 'Assinatura de '.$dias_plano_tres.' dias';
					break;
					
					default:
						$Planos = 'Plano Teste';
						$Valor = 'Bônus R$: 21,00';
						$Dias = 'Assinatura de '.$empresa_data_renovacao.' dias grátis';
					break;
				}		
		


								$Adicionar = array(
									'user_name' 		=> $user_name,
									'user_lastname' 	=> $user_lastname,
									'user_email' 	    => $user_email,
									'user_telefone' 	=> $user_telefone,
									'user_password'     => $user_password,
									'user_plano'        => $user_plano,
									'user_level' 	    => 3,
									'user_registration' => $user_registration
								);

								$Query = DBCreate('ws_users', $Adicionar);



								$Adicionar = array(
									'nome_empresa' 		     => $nome_empresa,
									'nome_empresa_link' 	 => $nome_empresa_link,
									'end_uf_empresa' 	     => $uf_empresa,
									'cidade_empresa' 	     => $cidade_empresa,
									'end_bairro_empresa'     => $end_bairro_empresa,
									'end_rua_n_empresa'      => $end_rua_n_empresa,
									'email_empresa' 	     => $email_empresa,
									'telefone_empresa' 	     => $telefone_empresa,
									'empresa_data_renovacao' => $empresa_data_renovacao
								);

								$Query = DBCreate('ws_empresa', $Adicionar);


	
		
        if ($Query != 0) {		
			 echo'
			<script>
				$(document).ready(function(){
					swal("Ops '.utf8_encode($user_name).'...","Houve um erro ao fazer o seu cadastro, tente novamente!", "error");
				});
			</script>';

		}else{
			 echo'
		<script>
			$(document).ready(function(){
				swal("Sucesso '.utf8_encode($user_name).'...", "Seu cadastro foi realizado com sucesso.<br><a href="./login/Acessar"><button class="btn btn-default btn-sm"></button>Fazer Login...</a>", "success")	
			});
		</script>';

		}		
	}	
	
	
}

Posso esta deixando passar algo no php que não estou vendo o problema....

Share this post


Link to post
Share on other sites
1 hora atrás, ygor.anjos disse:

tente usar try catch para ver o erro que esta acontecendo

 


try {
    //codigo que pode estar gerando o erro


}catch (Exception $e){
    $error = $e->getMessage();
    echo $error;
}

 

Ola ygor bom dia  bom eu tirei o switch

e deu certo talvez as variavel não esta passando por ele, mais de outra deu certo...

e mudei a ordem aqui

        if ($QueryUser != 0 || $Query != 0) {		
			 echo'
		<script>
			$(document).ready(function(){
				swal("Sucesso '.utf8_encode($user_name).'...", "Seu cadastro foi realizado com sucesso.<br><a href="./login/Acessar"><button class="btn btn-default btn-sm"></button>Fazer Login...</a>", "success")	
			});
		</script>';			 


		}else{
			 echo'
			 
			<script>
				$(document).ready(function(){
					swal("Ops '.utf8_encode($user_name).'...","Houve um erro ao fazer o seu cadastro, tente novamente!", "error");
				});
			</script>';

		}	

 

 

Tenho um outro porem aqui que não estou conseguindo grava o id da tabela ws_users na tabela ws_empresa no campo user_id 

 

das duas tabelas é gravadas ao mesmo tempo entende?

 esta da seguinte forma


								$Adicionar = array(
									'user_name' 		=> $user_name,
									'user_lastname' 	=> $user_lastname,
									'user_email' 	    => $user_email,
									'user_telefone' 	=> $user_telefone,
									'user_password'     => $user_password,
									'user_plano'        => $user_plano,
									'user_level' 	    => 3,
									'user_registration' => $user_registration
								);

								$QueryUser = DBCreate('ws_users', $Adicionar);
                                		$QueryUser = $QueryUser[0];
		                                unset($QueryUser['user_id']);


								$Adicionar = array(
									'nome_empresa' 		     => $nome_empresa,
									'user_id' 		         => $QueryUser, //grava o id do ws_users na tabela ws_empresa
									'nome_empresa_link' 	 => $nome_empresa_link,
									'end_uf_empresa' 	     => $uf_empresa,
									'cidade_empresa' 	     => $cidade_empresa,
									'end_bairro_empresa'     => $end_bairro_empresa,
									'end_rua_n_empresa'      => $end_rua_n_empresa,
									'email_empresa' 	     => $email_empresa,
									'telefone_empresa' 	     => $telefone_empresa,
									'empresa_data_renovacao' => $empresa_data_renovacao
								);

								$Query = DBCreate('ws_empresa', $Adicionar);

Fiz de algumas formas e não deu

então fiz assim

                                		$QueryUser = $QueryUser[0];
		                                unset($QueryUser['user_id']);

 para ver se grava e não  deu tbm

 

Share this post


Link to post
Share on other sites

o unset destrói a variavel, não use ele se não precisa
tente assim:

$QueryUser = $QueryUser[0]['user_id'];

caso não de certo de um var_dump para verificar oque esta retornando após executar a query e pesquise sobre last insert id

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By Artur Mendonça
      Olá amigos.
      Estou a tentar fazer um sistema para upload de vídeos para criar uma base de dados.
      Já fiz um sistema para imagens e funciona na perfeição. Adaptei este código para upload de vídeo e recebo as mensagens de erro:
      Os (...) foi que coloquei para encurtar o caminho.
       
      Código da página para seleção e upload do vídeo:
      <?php session_start(); include_once "../conexao.php"; $agid = $_REQUEST['id']; $sql = "select * from tbl_album where albumid='$agid'"; $rs_result = mysqli_query($conectar, $sql); ?> <!DOCTYPE html> <html lang="pt-br"> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1"> <meta name="description" content="Página Administrativa"> <meta name="author" content=""> <link rel="icon" href="imagens/imgadmin.ico"> <title>Administrativo</title> <link rel="stylesheet" href="../css/bootstrap.min.css"> <link rel="stylesheet" href="../css/style.css"> </head> <?php $agid = $_REQUEST['id']; $sql = "SELECT * FROM tbl_albumvideo WHERE albumid='$agid'"; $rs_result = mysqli_query($conectar, $sql); while ($row = mysqli_fetch_assoc($rs_result)) { $aname = $row["name"]; } ;?> <body> <?php include_once "admmenu.php"; ?> <div class="container theme-showcase" role="main" Style='margin-top: 100px'> <h1 class="page-header"><br />Adicionar vídeo</h1> <div class="row"> <div class="col-md-12"> <div class="panel panel-default"> <div class="panel-heading"> Por favor selecione o vídeo </div> <div class="panel-body"> <div class="row"> <div class="col-lg-6"> <form action="processa/proc_cad_albumvideo2.php?id=<?php echo $agid ?>" method="POST" enctype="multipart/form-data" name="upload"> <div class="form-group"> <input type="file" name="arquivo" id="arquivo" value="arquivo"/> </div> <div class="form-group"> <input name="enviar" class="btn btn-primary" type="submit" id="enviar" value="Enviar"> </div> <div class="alert alert-danger" role="alert" style='margin-top:20px'> Esta operação poderá ser demorada, dependendo do tamanho do ficheiro a enviar e das suas condições de ligação à rede. <br/> <br/> Por favor seja paciente e não reinicie a página! </div> </form> </div> </div> </div> </div> </div> </div> </div> <script src="../js/jquery-3.2.1.slim.min.js"></script> <script src="../js/popper.min.js"></script> <script src="../js/bootstrap.min.js"></script> </body> </html> E este é o código para efetuar o upload e gravação na BD
      <?php ini_set('display_errors', 1); ini_set('display_startup_erros', 1); error_reporting(E_ALL); session_start(); include_once "../../conexao.php"; $adate = date('Y-m-d H:i:s'); $status = 'process'; $arquivo = $_FILES['arquivo']; $albumid = $_REQUEST['id']; $pasta = '../../videos/'; $resulta = mysqli_query($conectar, "SELECT * FROM tbl_albumvideo WHERE albumid='$albumid'"); $linhas = mysqli_fetch_assoc($resulta); $local = $linhas["local"]; $arqnome = $_FILES['arquivo']['name']; $ano = $linhas['ano']; $extensao = @end(explode('.', $arqnome)); $novonome = time() . "-" . rand() . "." . $extensao; $tmp = $_FILES['arquivo']['tmp_name']; $file = $pasta . $novonome; if (move_uploaded_file($tmp, $file)) { $query = mysqli_query($conectar, "INSERT INTO videos (video_name, local, ano,aid) VALUES ('$novonome','$local', '$ano', '$albumid')") or die(mysqli_error($conectar)); if ($query) { echo "<META HTTP-EQUIV=REFRESH CONTENT = '0;URL=http://(...)/addgalleryvideo.php'> <script type=\"text/javascript\"> alert(\" O vídeo foi guardado com sucesso.\"); </script>";} else {echo " <META HTTP-EQUIV=REFRESH CONTENT = '0;URL=http://(...)/addgalleryvideo.php'> <script type=\"text/javascript\"> alert(\" O Vídeo não foi guardado.\"); </script> "; } } Linha 14 : $arquivo = $_FILES['arquivo']; 
      Linha 21: $arqnome = $_FILES['arquivo']['name'];
      Linha 27: $tmp = $_FILES['arquivo']['tmp_name'];
       
      Desde já muito obrigado.
    • By szLeonardo
      Olá a todos,
      Estou com um problema no meu cadastro de usuário.
      A parte de cadastrar está sendo realizada corretamente e meu login também, o meu problema está é que tenho que cadastrar em uma tela, depois entrar em outra para validar e acessar.
      Gostaria que quando eu realizasse o cadastro já valida-se e entrasse direto, sem precisar ter que entrar na outra pagina e rodar o login.
       
      Segue meu cadastro que está funcionando:  
      //--Insere Registro   if(isset($_POST['cadastrar'])){     @$usuario      = trim(strip_tags($_POST['usuario']));     @$senha        = trim(strip_tags($_POST['senha']));     @$nivel_acesso = trim(strip_tags($_POST['nivel_acesso']));     $insert = "INSERT INTO cad_usuario (usuario, senha, nivel_acesso)                 VALUES (:usuario, :senha, :nivel_acesso)";   try{     $result = $conexao->prepare($insert);     $result->bindParam(':usuario',      $usuario, PDO::PARAM_STR);     $result->bindParam(':senha',        $senha, PDO::PARAM_STR);     $result->bindParam(':nivel_acesso', $nivel_acesso, PDO::PARAM_STR);     $result->execute();     $contar = $result->rowCount();   if($contar>0){     echo '<div class="alert alert-success">           <button type="button" class="close" data-dismiss="alert">×</button>           <strong>Sucesso!</strong> O Usuario foi Cadastrado!</div>';          $_SESSION['autenticado'] = true;   }else{     echo '<div class="alert alert-danger">           <button type="button" class="close" data-dismiss="alert">×</button>           <strong>Erro ao cadastrar!</strong> Não foi possível cadastrar o Usuario.</div>';   }}catch(PDOException $e){     echo $e;   }}   } }  
      Segue meu validador do usuário cadastrado que está funcionando: 
      <?php session_start(); include_once "connection/conecta.php"; $usuario = new Usuario(); try {   if($usuario->confere($_POST['usuario'],$_POST['senha'])) {     $_SESSION['autenticado'] = true;     $_SESSION['usuario'] = $_POST['usuario'];     header('location: principal.php');   } else {     $_SESSION['autenticado'] = false;     include_once "index.php";     exit("<div class='alert alert-danger col-sm-12'>Usuário ou senha incorretos. Verifique</div>");   } } catch(PDOException $p){   echo "Ocorreu um erro inesperado: ". $p->getMessage(); } ?>  
      Segue minha pagina principal aonde valida a $_SESSION['autenticado'] = false; 
      Mas só valida se passar na pagina index e passar pela validação a cima.
       <?php require_once("connection/conecta.php"); ob_start(); session_start();  if (@!$_SESSION['autenticado']){    include_once "index.php";    exit("<div class='alert alert-danger col-sm-12'>Para acessar o sistema você deve efetuar login</div>");  }     $logado = $_SESSION['usuario'];     $sql = "SELECT * from cad_usuario WHERE usuario = '$logado' and situacao = 'A'";     try{       $result = $conexao->prepare($sql);         $result->execute();       $contar = $result->rowCount();                if($contar =1){         $loop = $result->fetchAll();         foreach ($loop as $show){           $userLogado  = $show['usuario'];           $senhaLogado = $show['senha'];           $nivelLogado = $show['nivel_acesso'];         }       }       }catch (PDOWException $erro){ echo $erro;} ?>  
    • By mamotinho
      Olá, pessoal mais uma vez venho pedi a ajuda de vocês estou com um problema ao roda uma query que montei, eu sou iniciante na area e não tenho muito conhecimento então o codigo que fiz foi parte de meu conhecimento básico. bom o que eu quero resolver nessa query é o seguinte, eu quero consultar uma tabela e nela pega todos os registros com a a data vencida e lista ela dentro do while em seguida retornar dentro desse if o valor da coluna de cada uma exemplo de como fiz e ficou com loop infinito.

       
      declare @id int declare @getdate datetime select @id = IDCadastrado, @getdate = RegDate from BancoTeste.dbo.MinhaTabela where RegDate < getdate() while @id is not null begin select * from BancoTeste.dbo.MinhaTabela where IDCadastrado = @id end quando eu executo isso ai ele executa infinitamente o valor do primeiro registro repetidamente.
    • By lanahwinchester
      Olá, estou com um problema no VS Code quando tento instalar algo pelo terminal dele, "token não reconhecido no texto de origem". 
      Estou tentando instalar o react-navigation/native mas ele não deixa .

    • By unset
      Olá a todos, tenho uma aplicação pequena, que roda normalmente no php5 porém ao mudar a versão do php para 7 a mesma está apresentando a seguinte mensagem de erro
       
      Notice: Trying to access array offset on value of type null in
       
       
      <?php /* * APP CORE CLASS * Creates URL & Loads Core Controller * URL Format - /controller/method/param1/param2 */ class Core { // Set Defaults protected $currentController = 'Pages'; // Default controller protected $currentMethod = 'index'; // Default method protected $params = []; // Set initial empty params array public function __construct(){ $url = $this->getUrl(); // Look in controllers folder for controller if(file_exists('../app/controllers/'.ucwords($url[0]).'.php')){ // If exists, set as controller $this->currentController = ucwords($url[0]); // Unset 0 index unset($url[0]); } // Require the current controller require_once('../app/controllers/' . $this->currentController . '.php'); // Instantiate the current controller $this->currentController = new $this->currentController; // Check if second part of url is set (method) if(isset($url[1])){ // Check if method/function exists in current controller class if(method_exists($this->currentController, $url[1])){ // Set current method if it exsists $this->currentMethod = $url[1]; // Unset 1 index unset($url[1]); } } // Get params - Any values left over in url are params $this->params = $url ? array_values($url) : []; // Call a callback with an array of parameters call_user_func_array([$this->currentController, $this->currentMethod], $this->params); } // Construct URL From $_GET['url'] public function getUrl(){ if(isset($_GET['url'])){ $url = rtrim($_GET['url'], '/'); $url = filter_var($url, FILTER_SANITIZE_URL); $url = explode('/', $url); return $url; } } }  
      Alguém poderia dar uma força ai?
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.