Ir para conteúdo

Pesquisar na Comunidade

Mostrando resultados para as tags ''pdo''.

  • Pesquisar por Tags

    Digite tags separadas por vírgulas
  • Pesquisar por Autor

Tipo de Conteúdo


Todas as áreas do Fórum

  • Q&A Desenvolvimento
    • Perguntas e respostas rápidas
  • Desenvolvimento Web
    • Desenvolvimento frontend
    • Javascript
    • PHP
    • Ruby
    • Python
    • Java
    • .NET
    • Docker, Kubernets e outros ambientes
    • Desenvolvimento com Wordpress
    • Desenvolvimento de apps
    • Desenvolvimento ágil
    • Desenvolvimento de Games
    • Banco de Dados
    • Design e UX
    • Algoritmos & Outras Tecnologias
  • Entretenimento e uso pessoal
    • Segurança & Malwares
    • Geral
    • Boteco iMasters

Encontrar resultados em...

Encontrar resultados que...


Data de Criação

  • Início

    FIM


Data de Atualização

  • Início

    FIM


Filtrar pelo número de...

Data de Registro

  • Início

    FIM


Grupo


Google+


Hangouts


Skype


Twitter


deviantART


Github


Flickr


LinkedIn


Pinterest


Facebook


Site Pessoal


Localização


Interesses

Encontrado 60 registros

  1. Colegas, boa tarde. Estou criando um sisteminha de login, e estou na parte de recuperação de senha. Escrevi o código para o usuário digitar o e-mail cadastrado e solicitar a redefinição. Então, ele recebe um link único no e-mail dele e, por meio desse link, abre a página de criar nova senha. Tudo funciona. O cadastro, o login, e a alteração de senha. Exceto por um problema. Quando faço uma recuperação de senha, e retorno para a página de login, ele dá a nova senha como inválida. Aí, se eu fechar o navegador e abrir de novo, e digitar a nova senha, ele entra normalmente. E não funciona ctrl+F5. Tem que fechar e abrir. Não faço ideia do que pode estar causando isso. Vou postar meu código: Página de Login: <?php include_once 'connect.php'; ?> <!DOCTYPE html> <html lang="pt-br"> <head> <meta charset="UTF-8"> <meta name="viewport" content-"width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Login</title> <style> body{font-family: Arial, Helvetica, sans-serif} .content{display:flex;justify-content: center} .contato{width:100%; max-width: 500px;} .form{display: flex; flex-direction: column} .field{padding:10px; margin-bottom:15px; border:1px solid #DDD; border-radius: 5px; font-family: Arial, Helvetica, sans-serif; font-size: 16px} .field2{padding:10px; margin-bottom:15px; border:1px solid #ADD8E6; background-color:#ADD8E6; border-radius: 5px; font-family: Arial, Helvetica, sans-serif; font-size: 16px} .field2:hover{padding:10px; margin-bottom:15px; border:1px solid #87CEFA; background-color:#87CEFA; border-radius: 5px; font-family: Arial, Helvetica, sans-serif; font-size: 16px; font-weight:bold;} </style> </head> <body> <section class="content"> <div class="contato"> <h2>Login</h2> Por favor, entre com o e-mail e a senha cadastrados.<br><br> <form name="cad_usu" class="form" method=post> <input class="field" type="email" name="email" placeholder="E-mail" required> <input class="field" type="password" name="senha" placeholder="Senha" required> <input class="field2" type="submit" name="SendLogin" value="Entrar no Sistema"> <input class="field2" type="reset" value="Limpar Formulário"> <center><a href="recuperar_senha.php"><font size="2">Esqueci a senha</font></a></center> </form> </div> </section> <?php if(!isset($_POST['SendLogin'])){exit;} $dados = filter_input_array(INPUT_POST,FILTER_DEFAULT); $query_usuario = "SELECT * FROM usuario WHERE email =:email LIMIT 1"; $result_usuario = $conn->prepare($query_usuario); $result_usuario->bindParam(':email', $dados['email']); $result_usuario->execute(); $row_usuario = $result_usuario->fetch(PDO::FETCH_ASSOC); if($row_usuario && (password_verify($dados['senha'], $row_usuario['senha']))) { $_SESSION['id'] = $row_usuario['id']; $_SESSION['nome'] = $row_usuario['nome']; $_SESSION['situacoe_id'] = $row_usuario['situacoe_id']; $_SESSION['niveis_acesso_id'] = $row_usuario['niveis_acesso_id']; header("Location: painel.php");} else { echo "<div class=content><p style='color: red'> Erro: Usuário e/ou senha inválidos!</p>";} ?> </body> </html> Página que faz a alteração da Senha: <?php include_once 'connect.php'; ?> <!DOCTYPE html> <html lang="pt-br"> <head> <meta charset="UTF-8"> <meta name="viewport" content-"width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Recuperação de Senha</title> <style> body{font-family: Arial, Helvetica, sans-serif} .content{display:flex;justify-content: center} .contato{width:100%; max-width: 500px;} .form{display: flex; flex-direction: column} .field{padding:10px; margin-bottom:15px; border:1px solid #DDD; border-radius: 5px; font-family: Arial, Helvetica, sans-serif; font-size: 16px} .field2{padding:10px; margin-bottom:15px; border:1px solid #ADD8E6; background-color:#ADD8E6; border-radius: 5px; font-family: Arial, Helvetica, sans-serif; font-size: 16px} .field2:hover{padding:10px; margin-bottom:15px; border:1px solid #87CEFA; background-color:#87CEFA; border-radius: 5px; font-family: Arial, Helvetica, sans-serif; font-size: 16px; font-weight:bold;} </style> <script> function confereSenha(){ const senha = document.querySelector('input[name=senha]'); const confirma_senha = document.querySelector('input[name=confirma_senha'); if (confirma_senha.value === senha.value) { confirma_senha.setCustomValidity(''); } else { confirma_senha.setCustomValidity('As senhas digitadas não conferem! Elas precisam ser iguais.'); } } </script> </head> <body> <section class="content"> <div class="contato"> <center><h2>Recuperação de Senha</h2></center> <br><br> <?php $user = $_GET['utilizador']; $hash = $_GET['confirmacao']; $query_recupera = "SELECT * FROM recuperacao"; $result_recupera = $conn->prepare($query_recupera); $result_recupera->execute(); $row_recupera = $result_recupera->fetch(PDO::FETCH_ASSOC); $user_cadastrado = $row_recupera['email_usu']; $hash_cadastrado = $row_recupera['confirmacao']; $query_usuario = "SELECT * FROM usuario WHERE email = '$user'"; $result_usuario = $conn->prepare($query_usuario); $result_usuario->execute(); $row_usuario = $result_usuario->fetch(PDO::FETCH_ASSOC); $id_user = $row_usuario['id']; $modified = date('Y-m-d H:i:s'); echo $id_user; if(!empty($_POST)){ if($user == $user_cadastrado && $hash == $hash_cadastrado){ $dados = filter_input_array(INPUT_POST, FILTER_DEFAULT); $sql = "UPDATE usuario SET senha =:senha, modified =:modified WHERE id =:id"; $statement = $conn->prepare($sql); $statement->bindParam(':senha', password_hash($dados['senha'], PASSWORD_DEFAULT)); $statement->bindParam(':modified', $modified); $statement->bindParam(':id', $id_user); if($statement->execute()){ echo "<p style='color: green;'>Senha alterada com sucesso!</p>"; echo "<p><a href='login.php'>Voltar ao Login></a></p>"; } else { echo "<p style='color: red;'>Erro! Não foi possível alterar sua senha. Por favor, entre em contato com o administrador do sistema.</p>"; } } else { echo "<p style='color: red;'>Erro! Não foi possível alterar sua senha. Por favor, entre em contato com o administrador do sistema.</p>"; } } else { echo ""; } ?> <form name="cad_usu" class="form" method="POST" action=""> <input class="field" type="password" name="senha" placeholder="Senha" required onchange='confereSenha();'> <input class="field" type="password" name="confirma_senha" placeholder="Confirmar Senha" required onchange='confereSenha();'> <input class="field2" type="submit" name="AlteraSenha" value="Alterar Senha"> <input class="field2" type="reset" value="Limpar Formulário"> </form> </div> </section> </div> </body> </html> E por fim, a página que solicita a alteração da senha: <?php include_once 'connect.php'; ?> <html> <meta charset="UTF-8"> <meta name="viewport" content-"width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Login</title> <style> body{font-family: Arial, Helvetica, sans-serif} .content{display:flex;justify-content: center} .contato{width:100%; max-width: 500px;} .form{display: flex; flex-direction: column} .field{padding:10px; margin-bottom:15px; border:1px solid #DDD; border-radius: 5px; font-family: Arial, Helvetica, sans-serif; font-size: 16px} .field2{padding:10px; margin-bottom:15px; border:1px solid #ADD8E6; background-color:#ADD8E6; border-radius: 5px; font-family: Arial, Helvetica, sans-serif; font-size: 16px} .field2:hover{padding:10px; margin-bottom:15px; border:1px solid #87CEFA; background-color:#87CEFA; border-radius: 5px; font-family: Arial, Helvetica, sans-serif; font-size: 16px; font-weight:bold;} </style> </head> <body> <section class="content"> <div class="contato"> <h2>Recuperação de Senha</h2> Por favor, digite o e-mail cadastrado.<br><br> <form name="cad_usu" class="form" method=post> <input class="field" type="email" name="email_usu" placeholder="E-mail" required> <input class="field2" type="submit" name="Recuperar" value="Recuperar Senha"> <center><a href="login.php"><font size="2">Voltar ao Login</font></a></center> </form> </div> </section> <?php if(!isset($_POST['Recuperar'])){exit;} $dados = filter_input_array(INPUT_POST,FILTER_DEFAULT); $query_usuario = "SELECT email FROM usuario WHERE email =:email LIMIT 1"; $result_usuario = $conn->prepare($query_usuario); $result_usuario->bindParam(':email', $dados['email_usu']); $result_usuario->execute(); $row_usuario = $result_usuario->fetch(PDO::FETCH_ASSOC); if($row_usuario) { //se o e-mail for localizado, acontece isso: //gera a chave de confirmação $utilizador = $dados['email_usu']; $chave = sha1(uniqid( mt_rand(), true)); //salva a chave no banco de dados $query_salva_usu = "INSERT INTO recuperacao (email_usu, confirmacao) VALUES (:email_usu, :confirmacao)"; $salva_usu = $conn->prepare($query_salva_usu); $salva_usu->bindParam(':email_usu', $dados['email_usu'], PDO::PARAM_STR); $salva_usu->bindParam(':confirmacao', $chave, PDO::PARAM_STR); $salva_usu->execute(); if($salva_usu->rowCount()){ $link = "http://www.sgi.dev.br/recuperar.php?utilizador=$utilizador&confirmacao=$chave"; if(mail($utilizador, 'Recuperação de Senha', 'Olá, '.$utilizador.'. Recebemos uma solicitação de recuperação de senha do site SGI - Sistema de Gestão de Igrejas. Se foi você, por favor, clique no link a seguir e crie uma nova senha: '.$link.' Se você não se lembra de ter solicitado essa alteração, por favor, desconsidere este e-mail. ')) echo "<center><p style='color: green;'>Um link de confirmação foi enviado para '.$utilizador.'. <br>Por favor, abra-o e confirme sua solicitação. Se não o encontrar na caixa de entrada, gentileza verificar a caixa de spam.</center></p>"; }else{ echo "<p style='color: #ff0000;'>Erro. Não foi possível recuperar a senha. Entre em contato com o administrador do sistema!</p>"; } } else { //se o e-mail não for localizado, acontece isso: echo "<div class=content><p style='color: red'> Erro: email não encontrado!</p>"; } ?> </body> </html>
  2. Luiz Henrique

    Desempenho em múltiplos insert com PDO

    Olá, Preciso fazer uma inserção no DB de registros referente a pagamentos, quando for no crédito será realizado o insert com sua respectiva data de compensação e valor da parcela exemplo: 3 parcelas de 100.00 e cada registro em seu devido mês: INSERT INTO tabela (valor, data) VALUES (100, 2022-08-17),(100, 2022-09-17),(100, 2022-10-17) É mais eficiente fazer da forma acima ou colocar 3 INSERT? Ou existe forma melhor de fazer isso? Obrigado.,
  3. mm_edilson

    Não consigo encontrar o erro.

    Boa tarde, amigos. Estou criando um sistema de login com PHP e PDO, mas não consigo achar um erro. Ao abrir a página de cadastro, retorna "esta página não está funcionando". Já vasculhei o código de cima a baixo várias vezes, e não consigo encontrar o erro. Se puderem ajudar, fico muito grato. Minha página de cadastro: <?php require_once 'classes/usuarios.php'; $u = new Usuario; ?> <htm lang="pt-br"> <head> <meta charset="utf-8"> <title>SGI - CADASTRO DE USUÁRIO</title> <link rel="stylesheet" href="css/stilo.css"> <body> <div id="corpo-form"> <h1>SGI - LOGIN</h1> <form method="POST"> <input type="text" name="nome" placeholder="Nome Completo" maxlengtht="75"> <input type="email" name="email" placeholder="Usuário" maxlength="50"> <input type="password" name="senha" placeholder="Senha" maxlength="12"> <input type="password" name="confsenha" placeholder="Confirmar Senha" maxlength="12"> <input type="submit" value="INSERIR"> </form> </div> <?php if(isset($_POST['nome'])) { $nome = addslashes($_POST['nome']); $email = addslashes($_POST['email']); $senha = addslashes($_POST['senha']); $confsenha = addslashes($_POST['confsenha']); if(!empty($nome) && !empty($email) && !empty($senha) && !empty($confsenha)) { $u->conectar("****","localhost","***","***"); if($u->msgErro == "") { if($senha == $confsenha){ if($u->cadastrar($nome,$email,$senha)) { echo "Cadastro realizado com sucesso!"; } else { echo "Email já cadastrado no sistema!"; } } else { echo "Senhas digitadas não correspondem."; } } else { echo "Erro:" .$u->msgErro; } } else { echo "Por favor, preencha todos os campos."; } } ?> </body> </head> </html> E aqui a classe usuários <?php Class Usuario { private $pdo; public $msgErro = ""; public function conectar($nome, $host, $usuario, $senha) { global $pdo; try { $pdo = new PDO("mysql:dbname=".$nome.";host=.$host,$usuario,$senha); } catch (PDOException $e) { $msgErro = $e->getMessage(); } public function cadastrar($nome, $email, $senha, $situacoe_id, $niveis_acesso_id, $created, $modified) { global $pdo; $sql = $pdo->prepare("SELECT id FROM usuarios WHERE email = :e"); $sqk->bindValue(":e",$email); $sql->execute(); if($sql->rowCount() > 0) { return false; } else { $sql = $pdo->prepare("INSERT TO usuarios ($nome, $email, $senha, $situacoe_id, $niveis_acesso_id, $created, $modified) VALUES(:n, :e, :p, :s, :n, :c, :m)"); $sqk->bindValue(":n",$nome); $sqk->bindValue(":e",$email); $sqk->bindValue(":p",md5($senha)); $sqk->bindValue(":s",$situacoe_id); $sqk->bindValue(":n",$niveis_acesso_id); $sqk->bindValue(":c",$created); $sqk->bindValue(":m",$modified); $sql->execute(); return true; } } public function logar($email, $senha) { global $pdo; $sql = $pdo->prepare("SELECT id FROM usuarios WHERE email = :e AND senha = :p"); $sql->bindValue(":e",$email); $sql->bindValue(":p"md5($senha)); $sql->execute(); if($sql->rowCont() > 0) { $dado = $sql->fetch(); session_start(); $_SESSION['id'] = $dado['id']; return true; } else { return false; } } } ?> Se alguém puder ajudar, e conseguir identificar onde está o erro, fico muito, muito agradecido. Abraços
  4. Marcones Borges

    Erro ao comparar duas tabelas com INNER JOIN

    Olá, estou precisando de uma ajuda... Tenho duas tabelas ministros entradas Preciso exibir a lista dos ministros que não contam no relatório gerado em entradas. Fiz assim a combinação. $sql = "SELECT ministro.id, ministro.area, entrada.beneficiario, entrada.id_benificiario, entrada.id_benificiario, entrada.tipo_lancamento FROM ministro INNER JOIN entrada ON ministro.id = entrada.id_benificiario WHERE ministro.area = entrada.area_beneficiario AND ministro.nome = entrada.beneficiario AND entrada.id_benificiario='[{$id_exer}' AND entrada.tipo_lancamento='ministro' "; $stm = $conexao->prepare($sql); $stm->execute(); $clientes = $stm->fetchAll(PDO::FETCH_OBJ); Fiz as combinações direitinho mais não consigui exbir os que estão na tabela ministro e não estão na tabela entrada.
  5. Marcones Borges

    Erro ao migrar código de php 5.6 para pdo

    Olá, sou iniciante em php, estou tentando migrar um código de php 5.6 para pdo mais da erro, não roda.... Alguém pode me ajudar? include '../Connections/functions.php'; function montaSelect() { $sql = "SELECT * FROM membros"; $result = $con->query($sql); if ($result->num_rows > 0 ) { while($dados = $result->fetch_assoc()) { $opt .= '<option value="'.$dados['id'].'">'.$dados['nome'].'</option>'; } } else { $opt = '<option value="0">Nenhum Membro cadastrado</option>'; return $opt; } } Este era o código original: // require 'topof.php'; // echo $usuario; /** * função que retorna o select */ function montaSelect() { $sql = "SELECT id, nome FROM membros '"; $query = mysql_query( $sql ); if( mysql_num_rows( $query ) > 0 ) { while( $dados = mysql_fetch_assoc( $query ) ) { $opt .= '<option value="'.$dados['id'].'">'.$dados['nome'].'</option>'; } } else $opt = '<option value="0">Nenhum Membro cadastrado</option>'; return $opt; }
  6. Sapinn

    PDO lastInsertId retorna 0

    Recentemente, o seguinte erro estava aparecendo em meu site 'max_user_connections', depois de muitas pesquisas descobri que o problema era devido a uma conexão persistente de banco de dados, então o removi do meu código e funcionou. Outro problema surgiu agora, meu lastInsertId () está retornando 0. Quando eu uso a conexão persistente, ele funciona se eu removê-lo, ele falha. Eu nem sei mais o que fazer. Vou deixar as partes mais importantes do meu código aqui: Conexão: public function __construct() { $dsn = 'mysql:host='.$this->host.';dbname='.$this->bank; try { $this->dbh = new PDO($dsn,$this->user,$this->password); $this->dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); } catch (PDOException $e) { print "Error!: " . $e->getMessage() . "<br/>"; die(); } } public function lastId Inserted(){ return $this->dbh->lastInsertId(); } Pesquisando pelo último Id: if($this->saleModel->store($data)): $sale_id = $this->db->lastId Inserted(); $data['sale_id'] = $sale_id; $this->sellModel->sellProduct($data); $total = $stock->quant_product - $data['quant_sale']; $this->ProductModel->decreaseSales($data['product_id'],$total); Url::redirect('sales/sellProducts/'.$sale_id.''); endif;
  7. Sapinn

    Como fazer upload de arquivo com PDO

    Estou precisando salvar fotos dos usuários de um sistema e não estou conseguindo fazer com OO já assisti video aulas e li algumas matérias mas sempre dá erro. Alguém sabe algum jeito de se fazer?? Eu até tentei mas fica sempre com erro, vou postar aqui talvez tenha algo que eu esteja fazendo errado. class para salvar a foto: private function salvarFoto($foto){ $fotos = $_FILES['foto_admin']; $fotoDir = "imagens/fotos_admins/"; $fotoPath = $fotoDir . basename($foto['foto_admin']['name']); $fotoTmp = $foto['foto_admin']['tmp_name']; if(move_uploaded_file($fotoTmp, $fotoPath)): return $fotoPath; else: return false; endif; } E estou chamando ela assim: $upload = $this->salvarFoto($_FILES); if(gettype($upload) == 'string'): $dados['foto_admin'] = $upload; endif; E o erro é o seguinte: move_uploaded_file(imagens/fotos_admins/sapinn.jpg): failed to open stream: No such file or directory in Não sei o que está errado a pasta imagens/fotos_admins está dentro da minha pasta Controller
  8. Boa pessoal. Então, estou fazendo um sistema para uma loja de manutenção de aparelhos eletrônicos, e eu tenho um formulário de cadastro onde eu posso inserir os dados de um cliente e os dados do seu aparelho. E eu consigo cadastrar simultaneamente cada um em suas respectivas tabelas. O que eu gostaria de fazer era assim que cadastra-se o cliente pega-se o seu id( Nesse caso o ultimo id inserido) e inserisse na tabela serviços junto. No PDO tem um jeito de fazer isso que é usando o lastInsertId() mas eu não estou sabendo como retornar esse ultimo id para fazer essa inserção
  9. acdestefani

    Sistema de Login PDO

    Olá pessoal! Peguei alguns códigos na internet para para estudar um pouco e aproveitei para desenvolver um sisteminha simples aqui onde eu trabalho. Consegui desenvolvê-lo usando esse arquivo de conexão: <?php /************************************************************************************************************* * @author William F. Leite * * Data: 20/06/2014 * * Descrição: Classe elaborada com o objetivo de auxlilar nas operações CRUDs em diversos SGBDS, possui * * funcionalidades para construir instruções de INSERT, UPDATE E DELETE onde as mesmas podem ser executadas * * nos principais SGBDs, exemplo SQL Server, MySQL e Firebird. Instruções SELECT são recebidas integralmente * * via parâmetro. * *************************************************************************************************************/ /* * Constantes de parâmetros para configuração da conexão */ define('SGBD', 'mysql'); define('HOST', 'localhost'); define('DBNAME', 'contratos_rh'); define('CHARSET', 'utf8'); define('USER', 'tonhao'); define('PASSWORD', '100375'); define('SERVER', 'linux'); class conexao { /* * Atributo estático de conexão */ private static $pdo; /* * Escondendo o construtor da classe */ private function __construct() { // } /* * Método privado para verificar se a extensão PDO do banco de dados escolhido * está habilitada */ private static function verificaExtensao() { switch(SGBD): case 'mysql': $extensao = 'pdo_mysql'; break; case 'mssql':{ if(SERVER == 'linux'): $extensao = 'pdo_dblib'; else: $extensao = 'pdo_sqlsrv'; endif; break; } case 'postgre': $extensao = 'pdo_pgsql'; break; endswitch; if(!extension_loaded($extensao)): echo "<h1>Extensão {$extensao} não habilitada!</h1>"; exit(); endif; } /* * Método estático para retornar uma conexão válida * Verifica se já existe uma instância da conexão, caso não, configura uma nova conexão */ public static function getInstance() { self::verificaExtensao(); if (!isset(self::$pdo)) { try { $opcoes = array(\PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES UTF8'); switch (SGBD) : case 'mysql': self::$pdo = new \PDO("mysql:host=" . HOST . "; dbname=" . DBNAME . ";", USER, PASSWORD, $opcoes); break; case 'mssql':{ if(SERVER == 'linux'): self::$pdo = new \PDO("dblib:host=" . HOST . "; database=" . DBNAME . ";", USER, PASSWORD, $opcoes); else: self::$pdo = new \PDO("sqlsrv:server=" . HOST . "; database=" . DBNAME . ";", USER, PASSWORD, $opcoes); endif; break; } case 'postgre': self::$pdo = new \PDO("pgsql:host=" . HOST . "; dbname=" . DBNAME . ";", USER, PASSWORD, $opcoes); break; endswitch; self::$pdo->setAttribute(\PDO::ATTR_ERRMODE, \PDO::ERRMODE_EXCEPTION); } catch (PDOException $e) { print "Erro: " . $e->getMessage(); } } return self::$pdo; } public static function isConectado(){ if(self::$pdo): return true; else: return false; endif; } } O sistema está funcionando perfeitamente, porém gostaria de incluir a necessidade de fazer login para acessá-lo. Usei o código abaixo, que também consegui na internet: <?php session_start(); include('conexao.php'); if(empty($_POST['usuario']) || empty($_POST['senha'])) { header('Location: index.php'); exit(); } $usuario = mysqli_real_escape_string($conexao, $_POST['usuario']); $senha = mysqli_real_escape_string($conexao, $_POST['senha']); $query = "SELECT usuario FROM tab_usuarios WHERE usuario = '{$usuario}' AND senha = md5('{$senha}')"; $result = mysqli_query($conexao, $query); $row = mysqli_num_rows($result); if($row == 1) { $_SESSION['usuario'] = $usuario; header('Location: painel_professor.php'); exit(); } else { $_SESSION['nao_autenticado'] = true; header('Location: index.php'); exit(); } Porém esse login só funciona usando esse arquivo de conexão: <?php define('HOST', '127.0.0.1'); define('USUARIO', 'tonhao'); define('SENHA', '100375'); define('DB', 'contratos_rh'); $conexao = mysqli_connect(HOST, USUARIO, SENHA, DB) or die ('Não foi possível conectar'); Como poderia adaptá-lo para que funcione com o primeiro arquivo de conexão? Tentei por vários dias, mas como tenho pouca experiência com programação, não consegui. Desde já agradeço a ajuda de todos
  10. biza

    Filtro com PHP PDO e MYSQL

    Viva pessoal, Estou com um problema na execução de um filtro aos dados vindos da base de dados, sera que alguém me pode ajudar, os dados estão vindo para a pagina através do método $_POST, que são seleccionados através do carregamento de uma dropbox chamada 'select-segment', desta forma se o utilizador apertar o botão 'action' ele executa o filtro caso não aperte ele executa a seleção sem filtros, será que alguém me pode ajudar... O erro devolvido é o seguinte: Fatal error:: Uncaught PDOException: SQLSTATE[HY093]: Invalid parameter number: parameter was not defined in /Applications/MAMP/htdocs/cargeWebsite/carList.php:46 Stack trace: #0 /Applications/MAMP/htdocs/cargeWebsite/carList.php(46): PDOStatement->execute() #1 /Applications/MAMP/htdocs/cargeWebsite/index.php(155): include('/Applications/M...') #2 {main} thrown in $query .='SELECT * FROM tbl_vehicle AS v INNER JOIN tbl_brands AS b ON v.brand_id = b.id_brand INNER JOIN tbl_images AS i ON v.id_vehicle = i.vehicle_id INNER JOIN tbl_fuel AS f ON v.fuel_id = f.id_fuel WHERE v.active = :active'; if(isset($_POST['action'])){ if(isset($_POST['select-segment']) && $_POST['select-segment']!=''){ $segment_filter = $_POST['select-segment']; $query.= 'AND segment_id IN ("'.$segment_filter.'")'; } $query .='ORDER BY v.last_inser ASC'; }else{ $query .='ORDER BY v.last_inser ASC'; } if($_POST['lenght'] = -1){ $query_1 = 'LIMIT :inicio, :limite'; } $dbh = createPDO(); $statement = $dbh->prepare($query); $statement->bindValue(':active',$intermedio); $statement->execute(); $number_filter_row = $statement->rowCount(); $statement = $dbh->prepare($query . $query_1); $statement->bindValue(':inicio',(int)$init, PDO::PARAM_INT); $statement->bindValue(':limite',(int)$limite, PDO::PARAM_INT); $statement->execute(); foreach ($result as $row){ }
  11. Sapinn

    PDO como estender a conexao para outros arquivos

    Iai galera beleza? Estou com um erro simples aqui como eu faço para estender minha conexão para outros arquivos ? Estou tentado fazer mas está dado um erro aqui arquivo connection.php <?php class Conexao{ public $db_name = 'pessoa'; public $host = 'localhost'; public $user = 'root'; public $pass = ''; public function __construct() { try { $pdo = new PDO("mysql:db_name=".$this->db_name.";host=".$this->host,$this->user,$this->pass); } catch (PDOException $e) { echo "Erro no banco ".$e->getMessage(); exit(); } } } arquivo Pessoa.php <?php include 'connection.php'; class Pessoa { private $pdo; public function __construct() { $this->pdo = new Conexao(); } public function buscarDados(){ $stmt = []; $sql = $this->pdo->query("SELECT * FROM pessoa order by id desc"); $stmt = $sql->fetchAll(PDO::FETCH_ASSOC); return $stmt; } } arquivo index.php <?php require_once 'models/Pessoa.php'; $p = new Pessoa(); ?> <!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.0"> <link rel="stylesheet" href="assets/css/style.css"> <title>Crud PDO </title> </head> <body> <section id="esquerda"> <form action=""> <h2>Cadastrar Pessoa</h2> <label for="nome">Nome: </label> <input type="text" name="nome" id="nome"> <label for="telefone">Telefone: </label> <input type="text" name="telefone" id="telefone"> <label for="email">Email:</label> <input type="text" name="email" id="email"> <input type="submit" value="Cadastrar"> </form> </section> <section id="direita"> <?php $p->buscarDados(); ?> <table> <tr id="titulo"> <td>Nome</td> <td>Telefone</td> <td colspan="2">Email</td> </tr> <tr> <td>Maria</td> <td>00000000</td> <td>maria@gmail.com</td> <td><a href="">Editar</a> <a href="">Excluir</a></td> </tr> </table> </section> </body> </html> Erro que é apresentado: Fatal error: Uncaught Error: Call to undefined method Conexao::query()
  12. eduardodsilvaq

    Bindparam no Mysql "Limit"

    $cmd = $pdo->prepare("SELECT * FROM tabela limit :inicio , :final"); $cmd->bindValue(":inicio",$inicio); $cmd->bindValue(":final",$final); O problema esta na primeira linha, pois se substituir :inicio e :final pelas suas variáveis a pesquisa acontece corretamente. Alguma solução?
  13. eduardodsilvaq

    Bindparam no Mysql "Limit"

    $cmd = $pdo->prepare("SELECT * FROM tabela limit :inicio , :final"); $cmd->bindValue(":inicio",$inicio); $cmd->bindValue(":final",$final); O problema esta na primeira linha, pois se substituir :inicio e :final pelas suas variáveis a pesquisa acontece corretamente. Alguma solução?
  14. mamotinho

    Exibindo valor de procedure dentro de array

    Boa noite! estou com dúvidas em relação a array, eu tenho uma procedure no SQL Server e essa procedure exibe uma lista de resultados, eu gostaria de pega o valor desses resultados e lista em um array para eu comparar com outro valor que vai ser selecionado em um select , tipo abaixo: $arraySelect = $db->prepare(exec WebSite.dbo.server_value_product 2); $arraySelect->execute(); $arrayExemple = $arraySelect->fetchAll(); procedure_list = array($arrayExemple); !in_array($valorSelect, $procedure_list){ echo 'O Valor selecionado não existe nos resultados da procedure'; } alguem sabe como posso listar o resultado da procedure em array. e sabe se o valor que procuro está entre os resultados da array.
  15. Matheus Bispo

    Select não traz os dados

    Saudações colegas, estou com um problema aqui, que está difícil de resolver, estou criando um login, utilizando PHP POO+PDO, acontece que já tentei de tudo quanto é jeito e não consigo passar deste problema. Vamos lá, primeiro o meu index.php <input type="email" name="usu_email" id="usu_email" class="form-control" placeholder="email@email.com" required="true" autofocus> <br> <label for="inputPassword">Senha</label> <input type="password" name="usu_senha" id="usu_senha" class="form-control" placeholder="*******" required="true"><br> <?php $Dados = filter_input_array(INPUT_POST, FILTER_DEFAULT); if(!empty($Dados['btnEnviar'])) { unset($Dados['btnEnviar']); $ChamarUsuario = new Usuario(); $ChamarUsuario->logar($Dados['usu_email'], $Dados['usu_senha']); echo $ChamarUsuario->getMsg(); var_dump($Dados); } else{ } ?> Na minha class Usuario public function logar($Email, $Senha) { $this->Email = $Email; $this->Senha = $Senha; $this->verificarEmail(); } private function verificarEmail(){ $Visualizar = new Read(); $Visualizar->ExeRead('usuarios', 'WHERE usu_email = :usu_email LIMIT :limit', "usu_email={$this->Email}&limit=1"); if($Visualizar->getResultado()): $this->verificarSenha(); else: $this->Resultado = false; $this->Msg = "<div class='alert alert-danger'>Email não existente!</div>"; endif; } E na minha class Read está assim: class Read extends Conn { private $Select; private $Values; private $Resultado; private $Msg; private $Query; private $Conn; public function ExeRead($Tabela, $Termos = null, $ParseString = null) { if(!empty($ParseString)): parse_str($ParseString, $this->Values); endif; $this->Select = "SELECT * FROM {$Tabela} {$Termos}"; } public function getResultado() { return $this->Resultado; } public function getMsg() { return $this->Msg; } public function getRowCount() { return $this->Query->rowCount(); } private function conexao() { $this->Conn = parent::getConn(); $this->Query = $this->Conn->prepare($this->Select); $this->Query->setFetchMode(PDO::FETCH_ASSOC); } private function getInstrucao() { if ($this->Values): foreach ($this->Values as $Link => $Valor): if ($Link == 'limit' || $Link == 'offset'): $Valor = (int) $Valor; endif; $this->Query->bindValue(":{$Link}", $Valor, ( is_int($Valor) ? PDO::PARAM_INT : PDO::PARAM_STR)); endforeach; endif; } private function ExecutarInstrucao() { $this->Conexao(); try { $this->getInstrucao(); $this->Query->execute(); $this->Resultado = $this->Query->fetchAll(); } catch (PDOException $e) { $this->Resultado = null; return "<b>Erro ao Ler:</b> {$e->getMessage()}"; } } } Sempre retorna que meu email não existe, mas este email está gravado no banco... O que poderia estar errado?
  16. rogarfil

    filtro para pegar valores específico de uma array

    function getAssuntos() { $pdo = Connection::getInstance(); $sql = "SELECT DISTINCT DATE_FORMAT(created, '%Y %m') AS data FROM minha_tabela ORDER BY data DESC LIMIT 12"; try { $stmt = $pdo->prepare($sql); $stmt->execute(); $contar = $stmt->rowCount(); if($contar > 0 ) { while($blog = $stmt->fetch(PDO::FETCH_OBJ)) { $anoMes = $blog->data; $mesAno = explode(" ", $anoMes); switch ($mesAno[1]): case "01": $mes = 'Janeiro'; break; case "02": $mes = 'Fevereiro'; break; case "03": $mes = 'Março'; break; case "04": $mes = 'Abril'; break; case "05": $mes = 'Maio'; break; case "06": $mes = 'Junho'; break; case "07": $mes = 'Julho'; break; case "08": $mes = 'Agosto'; break; case "09": $mes = 'Setembro'; break; case "10": $mes = 'Outubro'; break; case "11": $mes = 'Novembro'; break; case "12": $mes = 'Dezembro'; break; endswitch; ?> <ol class="list-unstyled mb-0"> <li><a href="#"> <?php echo $mes." ".$mesAno[0]; ?> </a></li> </ol> <?php }//while } else { echo '<li>Não existe <strong>ASSUNTOS CADASTRADOS</strong></li>'; } } catch(PDOException $e) { $e->getMessage(); } }
  17. Sapinn

    Problemas ao passar parâmetros

    Estou tentando aprender PDO com MVC através de aulas no youtube. Estou com um problema no desenvolvimento de um framework quando chamo o parâmetro. Estou debugando o codigo para tentar achar o erro e parece que o paramentro chamado é o anterior. Quando uso o seguinte link http://localhost/framework_mvc/paginas e debugo aparece o seguinte: object(Rota)#1 (3) { ["controlador":"Rota":private]=> object(Paginas)#2 (0) { } ["metodo":"Rota":private]=> string(5) "index" ["parametros":"Rota":private]=> array(1) { [0]=> string(7) "paginas" } } Ate ai tudo certo. Quando uso o seguinte link http://localhost/framework_mvc/paginas/sobre e debugo aparece o seguinte: object(Rota)#1 (3) { ["controlador":"Rota":private]=> object(Paginas)#2 (0) { } ["metodo":"Rota":private]=> string(5) "sobre" ["parametros":"Rota":private]=> array(1) { [0]=> string(7) "paginas" } } Quando o que deveria ocorrer era um erro e ser necessário que fosse adicionado mais um parametro na url ficando por exemplo assim: http://localhost/framework_mvc/paginas/sobre/24. Codigos usados: Rota.php <?php class Rota{ private $controlador = 'Paginas'; private $metodo = 'index'; private $parametros = []; public function __construct(){ $url = $this->url() ? $this->url() : [0]; if(file_exists('../app/Controllers/'.ucwords($url[0]).'php')): $this->controlador = ucwords($url[0]); unset($url[0]); endif; require_once '../app/Controllers/'.$this->controlador.'.php'; $this->controlador = new $this->controlador; if(isset($url[1])): if(method_exists($this->controlador, $url[1])): $this->metodo = $url[1]; unset($url[1]); endif; endif; $this->parametros = $url ? array_values($url) : []; call_user_func_array([$this->controlador,$this->metodo], $this->parametros); var_dump($this); } private function url(){ $url = filter_input(INPUT_GET,'url',FILTER_SANITIZE_URL); if(isset($url)): $url = trim(rtrim($url,'/')); $url = explode('/',$url); return $url; endif; } } Paginas.php <?php class Paginas{ public function index(){ } public function sobre($id){ echo $id."<hr/>"; } } index.php <?php include './../app/Libraries/Rota.php'; ?> <!DOCTYPE html> <html lang="pt-br"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Frameword de PHP7 - MVC</title> </head> <body> <?php $rotas = new Rota(); ?> </body> </html> A video aula que estou assistindo é essa:
  18. gramosiri2

    Confirmar cadastro pelo email - PDO

    Ola amigos, estou tentando fazer uma confirmação de cadastro por email, porém não estou tendo êxito. Consigo pegar o usuario, email e senha. Porem quando dou um 'echo' na variavel $id e $md5 para conferir os dados não aparece nada e o INSERT não é feito. Segue o codigo. <?php $host = "mysql:busca;host=localhost"; $usuario = "root"; $pass = ""; try{ $pdo = new PDO($host, $usuario, $pass); }catch(PDOExecption $e){ echo "Falha: ". $e->getMessage(); } $user = addcslashes($_POST['user'],"F"); $email = addcslashes($_POST['email'],"F"); $senha = md5(addcslashes($_POST['senha'],"F")); $pdo->query("INSERT INTO tabela1 SET user='$user', email='$email', senha='$senha'"); $id = $pdo->lastInsertId(); $md5 = md5($id); $assunto = "Confirme seu cadastro"; $link = "confirma.php?h=".$md5; $mensagem = '<a href="'.$link.'">Clique aqui para confirmar: </a>'; $header = "From: teste"; echo $user.'<br>'; echo $email.'<br>'; echo $senha.'<br>'; echo $id.'<br>'; echo $md5.'<br>'; mail($email, $assunto, $mensagem, $header); ?> TABELA: CREATE TABLE `tabela1` ( `id` int(11) NOT NULL AUTO_INCREMENT PRIMARY KEY, `user` varchar(50), `email` varchar(100), `senha` varchar(50), `status` tinyint(4) );
  19. oi pessoal estou com um problema , não estou conseguindo passar todos os valores o foreach no json_encode() alguém poderia me ajudar, eu estou tentando monta um mecanismo de refresh em tempo real de uma lista de notificação veja abaixo: <script type="text/javascript"> function make_call() { // Fazendo requisição AJAX $j.post('teste.php', function (frase) { // Exibindo frase $j('#listas').html('<i>' + frase + '</i>'); }, 'JSON'); setTimeout(function(){ make_call(); }, 5000); } </script> Aqui é o arquivo que quero enviar para a div #lists <?php require("conexao/directory.php"); $notificar = $db->query("select TOP 5 * from Techi7CP.dbo.cabal_notificacao_geral order by regdate desc"); $notificacao = $notificar->fetchAll(); $count_notificacao = abs($notificar->rowCount()); if($count_notificacao==0){ echo '<li style="text-align:center;">não existe notificações no momento.</li>'; }else{ foreach($notificacao as $notif){ $consulta_conta = $db->query("select * from account.dbo.cabal_auth_table where UserNum='".$notif['usernum']."'")->fetchObject(); switch($notif['acao']){ case 'logadopremiado' : echo ' <li><a class="black-text" href="#!"><span class="material-icons icon-bg-circle red small">redeem</span>'.$notif['jogador'].' ganhou no Logado Premiado</a> <time class="media-meta grey-text darken-2" datetime="2015-06-12T20:50:48+08:00"> '.Data::ExibirTempoDecorrido(date("Y-m-d H:i:s.B", strtotime($notif['regdate']))).'</time> </li>'; break; case 'mudarsenha' : echo ' <li><a class="black-text" href="#!"><span class="material-icons icon-bg-circle teal small">vpn_key</span>'.$consulta_conta->Nome.' alterou sua senha</a> <time class="media-meta grey-text darken-2" datetime="2015-06-12T20:50:48+08:00"> '.Data::ExibirTempoDecorrido(date("Y-m-d H:i:s.B", strtotime($notif['regdate']))).'</time> </li>'; break; case 'distribuirpontos' : echo ' <li><a class="black-text" href="#!"><span class="material-icons icon-bg-circle cyan small">control_point</span>'.$notif['jogador'].' distribuiu seus pontos</a> <time class="media-meta grey-text darken-2" datetime="2015-06-12T20:50:48+08:00"> '.Data::ExibirTempoDecorrido(date("Y-m-d H:i:s.B", strtotime($notif['regdate']))).'</time> </li>'; break; case 'girodasorte' : echo ' <li><a class="black-text" href="#!"><span class="material-icons icon-bg-circle brown small">star_border</span>'.$consulta_conta->Nome.' usou o giro da sorte</a> <time class="media-meta grey-text darken-2" datetime="2015-06-12T20:50:48+08:00"> '.Data::ExibirTempoDecorrido(date("Y-m-d H:i:s.B", strtotime($notif['regdate']))).'</time> </li>'; break; case 'sistematpoint' : echo ' <li><a class="black-text" href="#!"><span class="material-icons icon-bg-circle green small">golf_course</span>'.$notif['jogador'].' recebeu seu tpoint por clique</a> <time class="media-meta grey-text darken-2" datetime="2015-06-12T20:50:48+08:00"> '.Data::ExibirTempoDecorrido(date("Y-m-d H:i:s.B", strtotime($notif['regdate']))).'</time> </li>'; break; case 'combo' : echo ' <li><a class="black-text" href="#!"><span class="material-icons icon-bg-circle amber small">videogame_asset</span>'.$notif['jogador'].' fez '.$notif['ExtraDetalhes'].' em sua primeira vez</a> <time class="media-meta grey-text darken-2" datetime="2015-06-12T20:50:48+08:00"> '.Data::ExibirTempoDecorrido(date("Y-m-d H:i:s.B", strtotime($notif['regdate']))).'</time> </li>'; break; } } } ?> como eu faria para ser exibido todos os resultados registrados com o json_encode().
  20. Matheus B. Siqueira

    [ Resolvido ] Falha ao retornar dados com PDO

    Meu PDO, não está retornando nenhum valor, e está dando erro ao tentar baixar o arquivo: <?php //se não tiver o parametro, mata a aplicação. if (isset($_POST['codigo_video'])) { $codigo_video = $_POST['codigo_video']; } //Aqui está um exemplo simples de como fazer uma conexão PDO $host = 'localhost'; $db = 'onteach'; $user = 'root'; $pass = 'root'; $charset = 'utf8mb4'; $dsn = "mysql:host=$host;dbname=$db;charset=$charset"; try { $pdo = new PDO($dsn, $user, $pass); } catch (PDOException $e) { throw new PDOException($e->getMessage(), (int)$e->getCode()); } //$pdoQuery = $pdo->query("SELECT conteudo.arquivo FROM conteudo WHERE conteudo.conteudo_video = '{$codigo_video}'"); try{ $ready = $pdo->prepare("SELECT conteudo.arquivo FROM conteudo WHERE conteudo.conteudo_video = :codigo_video"); $ready->bindParam(':codigo_video', $codigo_video); // $ready = $pdo->prepare($pdoQuery); // $ready->execute(); }catch(PDOException $e){ echo $e->getMessage(); } while($rs = $ready->fetch(PDO::FETCH_ASSOC));{ $local = 'upload/'; $local_arquivo = $local.$rs; header('Content-type: octet/stream'); // Indica o nome do arquivo como será "baixado". Você pode modificar e colocar qualquer nome de arquivo header('Content-disposition: attachment; filename="'.$rs.'";'); // Indica ao navegador qual é o tamanho do arquivo header('Content-Length: '.filesize($local_arquivo)); // Busca todo o arquivo e joga o seu conteúdo para que possa ser baixado readfile($local_arquivo); } print_r($rs); ?> Alguém sabe resolver? Visto que o $rs não retorna o dado arquivo da tabela
  21. Olá pessoal, já rodei a internet inteira procurando uma função para eu conectar ao banco de dados SQL Server que está minha máquina virtual Dedicado. estou programando um site na hospedagem com a versão 7.3.16 , eu queria uma solução para eu conectar ao meu banco de dados mssql utilizando pdo. Eu utilizo a seguinte conexão. class Database { protected static $db; protected $db_host = DB_HOST; protected $db_usuario = DB_USER; protected $db_senha = DB_PASS; private function __construct() { try { self::$db = new PDO("odbc:Driver={SQL Server};Server=".$this->db_host."; port=122; Uid=$this->db_usuario;Pwd=$this->db_senha;"); self::$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); } catch (PDOException $e) { die("Connection Error: " . $e->getMessage()); } } public static function conexao() { if (!self::$db) { new Database(); } return self::$db; } } alguém pode me da solução de como faço isso funcionar no PHP 7 pra cima.
  22. Olá, estou com dúvidas , eu tenho a seguinte execução SELECT SUM(Cash) as soma FROM CashAccount Eu estou querendo pega o resultado desta consulta em PHP tipo $result = $pdo->query("SELECT SUM(Cash) as soma FROM CashAccount"); echo $result; Mais não sei como fazer aparece o mesmo resultado que é exibido quando eu faço a execução da query no SQL, por favor alguém poderia me informar como eu poderia está fazendo.
  23. eduardodsilvaq

    Undefined index: name in (no loop)

    Não sei oq tem de errado. O erro: Notice: Undefined index: name in C:\AppServ\www\includes\functions.php on line 105 A linha do erro: <td width="106"><div class="fonte">'. $row["name"] .'</div></td> O codigo: function mini_ranking (){ $PDO = db_connect_gamedata(); $sql = "SELECT name baselevel FROM u_hero WHERE class <> '80' ORDER BY baselevel Desc Limit 6"; $result = $PDO->query($sql); $guild = $result->fetchAll(PDO::FETCH_ASSOC); $i = 1; echo '<table width="153" height="0" border="0">'; foreach($guild as $row) { echo '<tr> <td width="0" height="0" align="center"><div class="fonte">'. $i++ . '</div></td> <td width="106"><div class="fonte">'. $row["name"] .'</div></td> <td width="20"><div class="fonte">'. $row["baselevel"] .'</div></td> <tr>'; } echo '</table>'; }
  24. o Google me avisou de dois erros no meu site; Clickable elements too close together Text too small to read Na verificação constatei que o erro é; Fatal error: Call to undefined function db_connect() in O php não me mostra esse erro mesmo habilitando os erros no php ini os arquivos de conexão que estou usando são; ini.php <?php define('DB_HOST', 'localhost'); define('DB_USER', 'user'); define('DB_PASS', 'senha'); define('DB_NAME', 'banco'); ini_set('display_errors', true); error_reporting(E_ALL); require_once 'functions.php'; functions.php <?php function db_connect() { $pdo = new PDO('mysql:host=' . DB_HOST . ';dbname=' . DB_NAME . ';charset=utf8', DB_USER, DB_PASS); return $pdo; } function make_hash($str) { return sha1(md5($str)); } function isLoggedIn() { if (!isset($_SESSION['logged_in']) || $_SESSION['logged_in']!== true) { return false; } return true; } O erro esta nesta linha <?php $pdo = db_connect(); $sql = $pdo->prepare("SELECT * FROM servicos "); $sql->execute(); while($row=$sql->fetch(PDO::FETCH_ASSOC)){ echo'<a href="servicos.php?id='.$row['id'].'">'.$row['servico'].'</a>'; } Incluo a conexão com banco na header.php e nas demais páginas não aparece o erro realmente não sei o que pode estar acontecendo. se alguém pode me ajudar? Obrigado
  25. Sergio Murilo Cabral

    Ajuda com window.alert

    Estou criando um cadastro de usuários, que até o momento esta funcionando quase que perfeito, se não fosse um "window.alert" aparecer quando desnecessário... É o seguinte, eu inseri o código abaixo para evitar o cadastro de E-mail repetido no Sistema, já que estarei usando o E-mail cadastrado como Login. // Verifica se o E-mail já existe no sistema $sql_verificaMail = 'SELECT email FROM cadastro WHERE email = :email'; $query_verificaMail = $db->prepare($sql_verificaMail); $query_verificaMail->bindValue(':email',$email, PDO::PARAM_STR); $query_verificaMail->execute(); $count_verificaMail = $query_verificaMail->rowCount(PDO::FETCH_ASSOC); if($count_verificaMail >= '1'){ // Redireciona para a pagina de inicio, caso o E-mail já existir no Sistema. echo "<meta http-equiv='refresh' content='0; URL= index.php'> <script language='javascript'> window.alert('Ups... Esse E-mail já é cadastrado em nosso Sistema!!!'); </script>"; }else{ // Se for um novo E-mail no sistema é realizado o cadastro Mas quando me deparo com um E-mail já cadastrado, ele bloqueia o cadastro e via "window.alert" envia a mensagem de que o E-mail já existe no Sistema, até ai perfeito... Mas quando clico em "OK" para voltar à pagina inicial, ele me manda outro "window.alert", que se refere ao E-mail enviado para a conta cadastrada... Estou postando abaixo todo código, para que os amigos possam me dar uma luz, e eu possa fazer que ele volte para a pagina inicial, logo apos o "window.alert", de E-mail já cadastrado. <?php require 'init.php'; include 'config.php'; // Cadastro if(isset($_POST['cadastrar'])){ $name = addslashes($_POST['name']); $ur = addslashes($_POST['ur']); $celular = addslashes($_POST['celular']); $email = addslashes($_POST['email']); $password = addslashes($_POST['password']); $foto = addslashes($_POST['foto']); $end_foto = addslashes($_POST['end_foto']); $t_cartola = addslashes($_POST['t_cartola']); $end_t_cartola = addslashes($_POST['end_t_cartola']); // Verifica se o E-mail já existe no sistema no Sistema $sql_verificaMail = 'SELECT email FROM cadastro WHERE email = :email'; $query_verificaMail = $db->prepare($sql_verificaMail); $query_verificaMail->bindValue(':email',$email, PDO::PARAM_STR); $query_verificaMail->execute(); $count_verificaMail = $query_verificaMail->rowCount(PDO::FETCH_ASSOC); if($count_verificaMail >= '1'){ // Redireciona para a pagina de inicio, caso o E-mail já existir no Sistema. echo "<meta http-equiv='refresh' content='0; URL= index.php'> <script language='javascript'> window.alert('Ups... Esse E-mail já é cadastrado em nosso Sistema!!!'); </script>"; }else{ // Se for um novo E-mail no sistema é realizado o cadastro $sql = 'INSERT INTO cadastro (name, ur, celular, email, password, foto, end_foto, t_cartola, end_t_cartola)'; $sql .= 'VALUES (:name, :ur, :celular, :email, :password, :foto, :end_foto, :t_cartola, :end_t_cartola)'; try { $create = $db->prepare($sql); $create->bindValue(':name', $name, PDO::PARAM_STR); $create->bindValue(':ur', $ur, PDO::PARAM_STR); $create->bindValue(':celular', $celular, PDO::PARAM_STR); $create->bindValue(':email', $email, PDO::PARAM_STR); $create->bindValue(':password', $password, PDO::PARAM_STR); $create->bindValue(':foto', $foto, PDO::PARAM_STR); $create->bindValue(':end_foto', $end_foto, PDO::PARAM_STR); $create->bindValue(':t_cartola', $t_cartola, PDO::PARAM_STR); $create->bindValue(':end_t_cartola', $end_t_cartola, PDO::PARAM_STR); if($create->execute()){ echo "<meta http-equiv='refresh' content='0; URL= ../index.php'> <script language='javascript'> window.alert('Cadastro realizado com sucesso!'); </script>"; } }catch (PDOException $e){ echo "<meta http-equiv='refresh' content='0; URL= ../index.php'> <script language='javascript'> window.alert('Ups... Erro ao realizar o Cadastro'); </script>"; }}} $urlSite = $_POST['urlSite']; $name = $_POST['name']; $email = $_POST['email']; require('PHPMailer/class.phpmailer.php'); $smtp = 'mail.resenhao.com.br'; $emailUser = 'adm@resenhao.com.br'; $senha = 'resenhao100164'; $mail = new PHPMailer(); $mail->IsSMTP(); $mail->SMTPAuth = true; $mail->Port = 587; $mail->Host = "$smtp"; $mail->Username = "$emailUser"; $mail->Password = "$senha"; $mail->SetFrom("$emailUser", "$urlSite"); $mail->AddAddress("$email", "$name"); $mail->Subject = 'Confirmar cadastro'; $body = "Olá $name<br/><br/> Para confirmar seu cadastro, por favor, clique no link abaixo:<br/> <a href='$urlSite/cadastroConfirmado.php?email=$email'>Clique aqui para confirmar seu cadastro</a><br/><br/> Se não tiver sido você ou não desejar confirmar o cadastro, apenas desconsidere esta mensagem<br/><br/> Obribado!"; $mail->MsgHTML($body); if($mail->Send()){ echo "<meta http-equiv='refresh' content='0; URL= index.php'> <script language='javascript'> window.alert('Foi enviado uma mensagem para o E-mail cadastrado,' + '\\n' + 'que possivelmente estara em sua caixa SPAM,' + '\\n' + 'que deve ser confirmado para validar o seu cadastro.'); </script>"; } else { echo "<meta http-equiv='refresh' content='0; URL= index.php'> <script language='javascript'> window.alert('Ups.. Erro ao realizar o cadastro!'); </script>"; } ?> Desde já agradeço pela a atenção de todos...
×

Informação importante

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