Ir para conteúdo
Fórum CódigoFonte.net
  • Anúncios

    • codigofonte

      Novo Fórum

      Pessoal, Atualizamos nossa versão do fórum para a mais recente da Invision Power. Como tínhamos uma versão muito antiga, talvez algumas áreas possam funcionar de forma errada ou com problemas, gostaria de pedir-lhes a compreensão, pois iremos resolvendo aos poucos. Até mais!

matheus.del-re

Membros
  • Total de itens

    2
  • Registro em

  • Última visita

  1. Boa Tarde Amigos. Amigos estou com uma dificuldade enorme para conseguir colocar os erros de validação embaixo dos inputs HTML do meu form, poderiam me ajudar por favor, vou colocar todo meu código HTML e meu código PHP. <!DOCTYPE html> <?php //BUSCANDO AS CLASSES require_once '../classes/Usuario.class.php'; //ESTANCIANDO A CLASSES $objUsuario = new Usuario(); //FAZENDO O LOGIN if(isset($_POST['btnRegistrar'])){ $objUsuario->queryInsert($_POST); } ?> <html lang="pt-br"> <head> <link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet"> <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no"/> <meta charset="utf-8"> <title>Extradder</title> <link rel="stylesheet" type="text/css" href="plugins/materialize/css/materialize.min.css"/> <link rel="stylesheet" type="text/css" href="css/registrar_style.css"> </head> <body> <div class="container" style="margin-top:90px; "> <div class="row"> <div class="col s12 m6 offset-m3"> <div class="card-panel"> <h4 class="center">Crie sua Carteira</br>Extrader</h4> <div class="row"> <form class="col s12 m12" method="post" action=""> <div class="row"> <div class="input-field col s12 m12"> <i class="material-icons prefix">account_box</i> <input id="icon_prefix" type="text" class="validate" name="nome" pattern="[a-zA-Z\s]+$" required="required" minlength="3" > <label for="icon_prefix" >Primeiro Nome</label> </div> <div class="input-field col s12 m12"> <i class="material-icons prefix">email</i> <input id="icon_email" type="text" class="validate" name="email" pattern="[a-z0-9._%+-][email protected][a-z0-9.-]+\.[a-z]{2,4}$" required="required"> <label for="icon_email">Email</label> </div> <div class="input-field col s12 m12"> <i class="material-icons prefix">vpn_key</i> <input id="icon_password" type="password" class="validate" name="senha" minlength="8" required="required" onkeyup="checa_seguranca()"> <label for="icon_password">Senha</label> <div id="pass"></div> </div> <div class="input-field col s12 m12"> <i class="material-icons prefix">vpn_key</i> <input id="icon_password_repeat" type="password" class="validate" name="senha_repete" required="required"> <label for="icon_password_repeat">Repita a Senha</label> </div> </div> <button class="btn registrar right registrar" type="submit" name="btnRegistrar">Registrar <i class="material-icons right ">send</i> </button> <a href="login.php" class="btn left login" name="logar">Log In</a> </form> </div> </div> </div> </div> </div> <script type="text/javascript" src="js/jquery-3.2.1.min.js"></script> <script type="text/javascript" src="js/registrar_script.php"></script> <script type="text/javascript" src="plugins/materialize/js/materialize.min.js"></script> </body> </html> <?php //BUSCANDO AS CLASSES include_once "Conexao.class.php"; include_once "Funcoes.class.php"; include_once "ValidacaoUsuario.class.php"; //CRIANDO A CLASSE class Usuario{ //ATRIBUTOS private $objusu; private $validate; private $idUsuario; private $nome; private $email; private $senha; private $senha_repete; private $dataCadastro; //CONSTRUTOR public function __construct(){ $this->objusu = new Funcoes(); } //METODOS MAGICO public function __set($atributo, $valor){ $this->$atributo = $valor; } public function __get($atributo){ return $this->$atributo; } //METODOS public function queryInsert($dados){ try{ $validate = new Validator(); $this->nome = $this->objusu->tratarCaracter($dados['nome'], 1); $this->email = $this->objusu->tratarCaracter($dados['email'], 1); $this->senha = $this->objusu->tratarCaracter($dados['senha'], 1); $this->senha_repete = $this->objusu->tratarCaracter($dados['senha_repete'], 1); $validate->set('Nome', $this->nome)->is_alpha()->is_required(); $validate->set('Email', $this->email)->is_email()->is_required(); $validate->set('Senha', $this->senha)->is_required(); $validate->set('Repitir a Senha', $this->senha_repete)->is_required()->is_equals($this->senha); if($validate->validate()){ $pdo = Conexao::conectar(); for ($i = 0; $i < 5; $i++) { $this->senha = password_hash($dados['senha'], PASSWORD_BCRYPT); } $this->dataCadastro = $this->objusu->dataAtual(2); $cst = "INSERT INTO `ext_usuarios` (`nome`, `email`, `senha`, `data_cadastro`) VALUES (:nome, :email, :senha, :data);"; $cst = $pdo->prepare($cst); $cst->bindParam(":nome", $this->nome, PDO::PARAM_STR); $cst->bindParam(":email", $this->email, PDO::PARAM_STR); $cst->bindParam(":senha", $this->senha, PDO::PARAM_STR); $cst->bindParam(":data", $this->dataCadastro, PDO::PARAM_STR); $retorno = $cst->execute(); if($retorno){ echo "<div class='spinner'> <div class='rect1'></div> <div class='rect2'></div> <div class='rect3'></div> <div class='rect4'></div> <div class='rect5'></div> </div>"; echo "<meta http-equiv=refresh content='3;URL=../templates/dashboard.php'>"; }else{ echo "<meta http-equiv=refresh content='1;URL=../templates/registrar.php'>"; } }else{ $erros = $validate->get_errors(); foreach ($erros as $erro){ //Percorre todos os erros foreach ($erro as $err){ //Percorre cada erro do campo especifico echo '<p>' . $err . '</p>'; } } } }catch(PDOException $e){ return 'Error: '.$e->getMessage(); } } } ?>
  2. UPDATE E INSERT VIA ARQUIVO .CSV

    Boa Tarde Galera. Vou tentar explicar essa minha grande dúvida da maneira mais clara possível, vamos lá: Tenho um sistema que recebe um UPLOAD de um arquivo .CSV e insere corretamente no banco de dados todas as colunas e linhas necessárias, até que um cliente chegou a mim me questionando sobre as pastas que eram duplicadas toda vez que ele fazia um novo UPLOAD("e;Pastas duplicadas seriam digamos 2 ou mais vezes o mesmo CNPJ e CPF inseridos), então oque propus a ele foi: Sempre que houver um novo upload ele confere se o CPF/CNPJ já está inserido no banco de dados. 1º -) Se o CPF/CNPJ não estiver inserido no banco de dados ele vai e criar o INSERT de registros normalmente. 2º-) Se o CPF/CNPJ já estiver inserido, ele cria um UPDATE nos registros, e faz o UPDATE dos arquivos com esse novo UPLOAD. Espero que entendam essa minha duvida. <?php include "../_conexao/conexao.php"; //Transferir o arquivo if (isset($_POST['submit'])) { //Importar o arquivo transferido para o banco de dados $sql = mysqli_query($conexao,"SELECT cpf_cnpj FROM semaforo"); $handle = fopen($_FILES['filename']['tmp_name'], "r"); while (($data = fgetcsv($handle, 1000, ";")) !== FALSE) { if ($data[0] != 'situacao_primaria' && !empty($handle)) { $import="INSERT into semaforo(id,situacao_primaria,status,data_indicacao,tipo_de_indicacao,tipo_de_distribuicao,categoria,codigo_penumper,nome_do_cliente,cpf_cnpj,negociadores,tipo_pessoa_cliente,uf,cep,municipio_do_cliente,advogado_gestor_interno,numero_operacao,sistema_origem,numero_operacao_origem,familia_do_produto,codigo_produto,nome_do_produto,codigo_agencia,nome_agencia,descricao_segmento,segmento_secundario,descricao_segmento_secundario,situacao_secundaria,data_recebimento,data_credito_liquidacao,valor_da_operacao,valor_transferido_para_creli,valor_da_divida,valor_saldo_contabil,qdt_dias_atraso,nome_da_garantia,ajuizado,codigo_do_ajuizamento,valor_ajuizado,tipo_de_acao,motivo_da_acao,avalista_nome,avalista_cpf_cnpj,avalista_tipo_pessoa,saldo_cm1,recup_judicial_falencia,escob_adm,data_inclusao_escob)values(null,'$data[0]','$data[1]','$data[2]','$data[3]','$data[4]','$data[5]','$data[6]','$data[7]','$data[8]','$data[9]','$data[10]','$data[11]','$data[12]','$data[13]','$data[14]','$data[15]','$data[16]','$data[17]','$data[18]','$data[19]','$data[20]','$data[21]','$data[22]','$data[23]','$data[24]','$data[25]','$data[26]','$data[27]','$data[28]','$data[29]','$data[30]','$data[31]','$data[32]','$data[33]','$data[34]','$data[35]','$data[36]','$data[37]','$data[38]','$data[39]','$data[40]','$data[41]','$data[42]','$data[43]','$data[44]','$data[45]','$data[46]')"; mysqli_query($conexao, $import) or die(mysqli_error($conexao)); } } fclose($handle); print "<center>Transferir <b>SEMÁFORO</b> por arquivo CSV selecione o arquivo clicando no botão <b>escolher arquivo</b>, e envie clicando no botão <b>upload</b>.</center><br /><br />\n"; print "<form enctype='multipart/form-data' action='#' method='post'>"; print "<center><input size='50' type='file' name='filename'></center><br /><br />\n"; print "<center><input type='submit' name='submit' value='Upload'></center></form>"; //Visualizar formulário de transferência } else { print "<center>Transferir <b>SEMÁFORO</b> por arquivo CSV selecione o arquivo clicando no botão <b>escolher arquivo</b>, e envie clicando no botão <b>upload</b>.</center><br /><br />\n"; print "<form enctype='multipart/form-data' action='#' method='post'>"; print "<center><input size='50' type='file' name='filename'></center><br /><br />\n"; print "<center><input type='submit' name='submit' value='Upload'></center></form>"; } ?> Esse é meu arquivo, espero que consigam me ajudar. Agradeço desde já;
×