Fóruns sobre PHP, JavaScript, HTML, MySQLi, jQuery, Banco de Dados, CSS

Moderador: web

 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 237
Localização: Florianópolis/SC
Contato:

Validação de e-mail

13-04-2007 09:14

Olá, esto criando uma lista onde os visitantes poderão se cadastrar e então é enviado e-mail regularmente, porem gostaria de ter a opção de confirmar o e-mail, como em qualquer destes sites, se recebe um email para validação do cadastro.

O script que envia os email é uma pagina php, que faz a busca dos destinatarios em um banco de dados... logo..

Qual seria o ideal? duas tabelas? uma provisório onde o visitante se cadastra, ai é gerado o email com um link para uma pagina php que copia dos dados da tabela provisória e insere na tabela onde é feita a busca, ou..
na tabela onde é feita a busca ou colocar uma coluna, como STATUS, entao crio um codigo, 0(aguardando) 1(ok) 2(cancelado), então é enviado o email pra pessoa com um link que leva a uma pagina php que faz um UPDATE alterando o status?
tipo

http://site/paginaparavalidar.php?id=xx   UPDATE lista SET STATUS= 1 WHERE $tabela.id='$id

eu prefiro o segundo caso, mas ai não sei como fazer para o script que envia os email selecionar apenas os destinatarios que estiverem com o STATUS 1

Obs. a pagina que insire os dados na tabela é a mesma que envia o e-mail, seria sensato que o e-mail fosse baseado no ultimo registro inserido na tabela?
ex.

$sqli = " INSERT INTO ..bla bla bla $ultimo = SELECT * FROM $tabela ORDER BY id DESC LIMIT 1 $destino = resultado do $ultimo @mail($destino, $assunto, $msg, $remet);

nesta ordem, inserindo e enviando o email, seria certeza absoluta que o e-mail iria para a pessoa certa? ou seja, certamente o ultimo registro seria da pessoa que enviou os dados pra este arquivo?
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17237
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Validação de e-mail

13-04-2007 11:51

Na minha opinião você poderia fazer assim:
uma tabela com:
id chave nome e-mail status

id = campo auto-increment

chave = um valor qualquer, tipo o nome, gravado por md5
ex.: $chave = md5($nome);

nome, e-mail = campos comum do cadastro

status= sempre 0 (default)

dai, você cria uma linha logo abaixo da linha do insert (cadastro) com a função mail()
dentro da mensagem do e-mail enviado para o usuário irá ter um link do tipo:

http://www.seusite.com/cadastro.php?chave=....
o valor dessa chave será o mesmo gerado pelo md5 (um valor criptografado)

nesse documento cadastro.php terá um select que irá buscar o cadastro onde a chave seja igual a passada pelo link (via GET)

no while que irá retornar os dados do cadastro com a chave cadastrada, terá a linha update para trocar o valor do status para 1 onde a chave seja a mesma passada.
0
Criar site grátis Wix
Hospedagem de sites Hostgator
Tem um script legal em HTML, CSS, PHP, HTML, JavaScript, jQuery? Poste e compartilhe com os usuários do fórum
:rock:
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 237
Localização: Florianópolis/SC
Contato:

Validação de e-mail

14-04-2007 14:27

Valeu Web, obrigado pela força, FUNCIONOU PERFEITAMENTE.

Ainda tem a segurança da chave, assim nenhum usuario espertinho vai sacanear com o e-mail de outra pessoa. perfeito

E o link que é enviado pro e-mail do cadastrado é gerado a partir dos dados coletado no post, nao pesquisando na tabela, assim nao tem o risco de enviar um link com cadastro de outra pessoa, perfeito.

Estou instalando em http://rindomuito.com/lista.php
a pessoa se cadastra, confirma o email e ai recebe piadas todo dia no seu email confirmado. bem legal.

Valeu pela força
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17237
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Validação de e-mail

14-04-2007 14:32

:lol:
0
Criar site grátis Wix
Hospedagem de sites Hostgator
Tem um script legal em HTML, CSS, PHP, HTML, JavaScript, jQuery? Poste e compartilhe com os usuários do fórum
:rock:

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado