Jump to content
gramosiri2

Confirmar cadastro pelo email - PDO

Recommended Posts

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)
);

 

Share this post


Link to post
Share on other sites

Batendo o olho vejo que sua Query está errada.

Me parece que ela era uma query de UPDATE e você simplesmente mudou o update para INSERT

 

o $id $md5  não te resultam em nada porque sua query está errada e dado a isso ela gera um erro e o registro não é adicionado. Logo, sua variavel $md5 não tem o valor de $id para poder fazer o hash

 

aplique sempre um bloco de if() ou try/catch quando executar $sql->query() para poder tratar possiveis erros de query.

 

Veja:

https://www.w3schools.com/php/php_mysql_insert.asp

 

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 violin101
      Caros amigo, saudações...

      por favor, me perdoa se postei na opção errada.
       
      estou com a seguinte dúvida.
       
      tenho o seguinte código no cadastro: 1234 0000 4320 9785
       
      como consigo mostrar /inibir os números no meio, para o usuário desta forma: 1234********9785
       
      Grato,
       
      Cesar
    • By Rodrigo5468
      Olá, boa tarde!
       
      Eu estava procurando na internet, mas não obtive nenhum resultado significativo.
      Eu preciso de um script em php que converte os links do youtube para o formato .mp4. Como que eu posso fazer isso? Alguma dica?
      Quero que quando o usuário informa o link do youtube no input e clica no botão de converter baixe o vídeo e faz a conversão para .mp4 e fornece para o usuário o link convertido para .mp4.
       
       
      Obrigado desde já.
    • By k9studio
      Olá Amigos,
      tenho essa tabela abaixo e estou apanhando para listar os dados e fazer validação,
      alguém pode ajudar como chamar os dados e validar mostrar o nome somente se estiver visible=on  

       
      CREATE TABLE `system` (   `namesystem` text COLLATE utf8_unicode_ci NOT NULL,   `setting` text COLLATE utf8_unicode_ci NOT NULL,   `value` text COLLATE utf8_unicode_ci NOT NULL,   `order` int(1) NOT NULL,   KEY `namesystem_setting` (`namesystem`(32),`setting`(32)),   KEY `setting_value` (`setting`(32),`value`(32)) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; como os dados estão na tabela:
       
      namesystem setting   value   order (honda)    (name)   (Honda)   1 (honda)    (xtts)   (ok)      0    (honda)   (visible)  (on)      0    (toyota)    (name)   (Toyota)  2 (toyota)    (xtts)   (ok)      0    (toyota)  (visible)  (on)      0    
    • By iguulima
      É possivel realizar uma consulta SQL em duas colunas da mesma tabela usando outra função que não seja o AND ou OR? Segue o meu Select ate agora:
       
      (SELECT * FROM product WHERE comid = $idcom AND status = 'Ativo' AND categ = $category AND nameprod like'%$search%'  ORDER BY id DESC)  
      Por exemplo se eu colocar um AND após buscar o nameprod, no nome do produto não tiver a palavra chave ele também não irá buscar. Ou se colocar um OR ele anulo as outras condições até onde eu sei.
      Iniciante em programação.
    • By fideles
      Caros,
       
      Venho por uma duvida que esta cruel comigo. Explico-lhes.
       
      Tenho um banco de dados contendo exatas 4 colunas (id, codigo, descricao, quantidade) e criei um relatorio no excel que me separa os codigos, neste caso seria 3 abas pq tenho somente 3 codigos internos (S = Solicitar, F = Forneceder, B = Baixado) e criei uma select com GROUP By codigo
       
      Ai no banco eu posso ter 30 codigos com S, 10 com F e 15 com B,
      SELECT * FROM solicitacoes WHERE n_solicitacao = '".$n_solicitacao."' GROUP BY codigo Acontece que essa instrução acima, lista somente a primeira linha de cada codigo, como que eu faço neste caso para ele listar todos codigos? Exibir no caso os 30 codigos com S, os 10 com F e os 15 com B ? 
       
      Estou comendo algo ou meu raciociono esta totalmente equivocado ?
       
×

Important Information

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