Newsgroup: it.comp.www.php
Titolo: aiuto email di conferma registrazione

sto seguendo le guide su 
freephp.it
io ho questo file php di conferma registrazione,e mi manda solo l'email per
far confermare
ma io vorrei mandare anche tutti i dati con cui si è iscritto compresa
password così per mantenere l'email in casi si scordasse l'user name e pass
come devo fare
grazie
<html>
<head>
<style type="text/css">
<!--
.style1 {
 color: #FF0000;
 font-weight: bold;
}
-->
</style>
</head>
<body>
<?php
include_once("include/config.php");
include_once("include/reg.lib.php");
if(isset($_POST['action']) and $_POST['action'] == 'Invia'){
 $ret = reg_check_data($_POST);
 $status = ($ret === true) ? reg_register($_POST) : REG_ERRORS;
 switch($status){
  case REG_ERRORS:
   ?>
   <span class="style1">Sono stati rilevati i seguenti errori:</span><br>
   <?php
   foreach($ret as $error)
    printf("<b>%s</b>: %s<br>", $error[0], $error[1]);
   ?>
   <br>Premere "indietro" per modificare i dati
   <?php
  break;
  case REG_FAILED:
   echo "Registrazione Fallita a causa di un errore interno.";
  break;
  case REG_SUCCESS:
   echo "Registrazione avvenuta con successo.<br>
   Vi è stata inviata una email contente le istruzioni per confermare la
registrazione.";
  break;
 }
}
?>
</body>
</html>
e questo è il file reg.lib
<?php
function reg_register($data){
 //registro l'utente
 global $_CONFIG;
 $id = reg_get_unique_id();
 mysql_query("
 INSERT INTO ".$_CONFIG['table_utenti']."
 (name, surname, indirizzo, occupazione, username, password, temp, regdate,
uid)
 VALUES
 ('".$data['name']."','".$data['surname']."','".$data['indirizzo']."',
'".$data['occupazione']."','".$data['username']."',MD5('".$data['password'].
"'),
 '1', '".time()."','".$id."')");
 //Decommentate la riga seguente per testare lo script in locale
 //echo "<a
href=\"
http://imbrognore.altrvista.org/confirm.php?id=
".$id."\">Conferma</a>
";
 if(mysql_insert_id()){
  return reg_send_confirmation_mail($data['mail'], "
faila...@libero.it
",
$id);
 }else return REG_FAILED;
}
function reg_send_confirmation_mail($to, $from, $id){
 //invio la mail di conferma
 $msg = "Per confermare l'avvenuta registrazione, clicckate il link
seguente:
 
http://imbrognore.altervista.org/confirm.php?id=
".$id."
 ";
 return (mail($to, "Conferma la registrazione", $msg, "From: ".$from)) ?
REG_SUCCESS : REG_FAILED;
}
function reg_clean_expired(){
 global $_CONFIG;
 $query = mysql_query("
 DELETE FROM ".$_CONFIG['table_utenti']."
 WHERE (regdate + ".($_CONFIG['regexpire'] * 60 * 60).") <= ".time()." and
temp='1'");
}
function reg_get_unique_id(){
 //restituisce un ID univoco per gestire la registrazione
 list($usec, $sec) = explode(' ', microtime());
 mt_srand((float) $sec + ((float) $usec * 100000));
 return md5(uniqid(mt_rand(), true));
}
function reg_check_data(&$data){
 global $_CONFIG;
 $errors = array();
 foreach($data as $field_name => $value){
  $func = $_CONFIG['check_table'][$field_name];
  if(!is_null($func)){
   $ret = $func($value);
   if($ret !== true)
    $errors[] = array($field_name, $ret);
  }
 }
 return count($errors) > 0 ? $errors : true;
}
function reg_confirm($id){
 global $_CONFIG;
 $query = mysql_query("
 UPDATE ".$_CONFIG['table_utenti']."
 SET temp='0'
 WHERE uid='".$id."'");
 return (mysql_affected_rows () != 0) ? REG_SUCCESS : REG_FAILED;
}
?>

 mantenere l'email in casi si scordasse l'user name e pass
Premesso che non ho guardato cosa fa lo script che hai postato perchè era
troppo lungo :P ti dico come facevo io per gestire la tua stessa situazione.
Ammettiamo che hai una pagina con un bel form in cui uno immette tutti i
dati per reigistrarsi al tuo sito. Nel valore action del form ci metti una
paginetta dove al suo interno hai tutti i dati inseriti nel form, quindi nei
controlli presenti sull pagina di registrazione. In questa (seconda)
paginahai già tutti gli stessi dati inseriti nel form.
Facciamo un esempio più concreto:
All'interno della pagina di registrazione sul tuo sito, che per comodità
chiameremo A, supponiamo esserci i campi di un form Nome, Usr, Pwd e Mail.
Io mi voglio registrare al tuo sito e come valori metto:
Nome: Stefano
Usr: skunk
Pwd: estate
Mail: 
sk...@novamute.com
Alla pressione del bottone di submit il contenuto dei campi presenti nell
apgina A viene passato alla pagina specificata nel metodo action del form.
Questa seconda pagina la chiamiamo B.
Il codice all'interno di B dovarà (potrà se non lo fai direttamente nella
pagina A) controllare la validità dei dati inseriti in A e, una volta
ritenuti giusti, li inserisci da qualche parte. Ammettiamo che sul tuo db
esiste una tabella chiamata ANA_UTENTI dove tieni traccia di tutti quelli
registrati al tuo sito, quello che andrai a fare non è altro che una insert
nella suddetta tabella:
INSERT INTO
ANA_UTENTI (DS_NOME, DS_USR, DS_PWD, DS_MAIL)
VALUES ('Stefano', 'skunk', 'estate', '
sk...@novamute.com
')
Se l'insert va a buon fine, tu vuoi inviare una mail di conferma alla mia
casella di posta...bene. I dati che ti servono li hai già perchè in B
esistono delle variabili che prendono lo stesso nome dei campi del form
presente in A. La sintassi per accedere a tali variabili 'varia' in base
alla versione di php che hai sulla tua macchina. Nella mail da inviare non
devi faro altro che mettere, in base a quello che vuoi visualizzare, il
contenuto della variabile corrispondente.
Saluti...
[
http://www.overlookcafe.net
]
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

 ha scritto nel messaggio
news:157Z29Z81Z46Y1...@usenet.libero.it...

allora fose non mi sono spiegato bene , l'email ti arriva ma soloil link per
confermare l'iscrizione , io vorrei aggiungerci i tuoi dati .

 aggiungerci i tuoi dati .
Rileggi l'ultima parte del mio post.
I dati ce l'hai già nella pagina che invia la mail. Aggiungili al atesto
della mail.
