Vediamo un po'
Ammettiamo che questo sia il form
[html]<form action="mail.php" method="POST">
<input type="text" name="nome">
<input type="text" name="email">
</form>[/html]Come detto la pagina mail.php riceve il nome e l'indirizzo email e manda un link all'utente, salvando questi dati su una tabella:
[php]<?
$nome="";
$email="";
$token="Una frase a tuo piacimento";
$nome=$_POST['nome'];
$email=$_POST['email'];
$md5email=md5($_POST['email'].$token);
$header="From: [email protected]\r\n";
$oggetto="Oggetto del messaggio";
$msg="Testo del messaggio contenente il link da cliccare\n";
$msg.="http://www.domain.ext/confirm.php?id=".$md5email;
$mail=mail($email, $oggetto, $msg, $header);
if ($mail)
{
require "file di connessione al Db";
$sql="INSERT INTO tabella (nome, email) VALUES ('$nome', '$md5email')";
$query=@mysql_query($sql) or die (mysql_error());
}
[/php]quando l'utente cliccherà sul link passiamo alla pagina di conferma
confirm.php
[php]$email="";
$email=$_GET['id'];
$sql="SELECT * FROM tabella WHERE email='$email'";
$query=@mysql_query($sql) or die (mysql_error());
$row=mysql_num_rows($query);
if($row>0)
{
$header="From: [email protected]\r\n";
$oggetto="Oggetto del messaggio di conferma";
$msg="Testo del messaggio di conferma\n";
$mail=mail("[email protected]", $oggetto, $msg, $header);
if ($mail)
{
echo "conferma inviata con successo";
}
}
[/php]Qualcosa del genere come struttura dovrebbe andare