Originariamente inviato da Grino
Credo che su altervista sei obbligato ad utilizzare come from un loro alias dedicato al tuo sito.

Prova un po' a vedere questo post

http://forum.it.altervista.org/799631-post5.html

scs ma sono un novellino...

register.php

<?php

include 'header.php';

?>

<div id="wrapper">

<?php

if(!isset($_GET['passkey'])){

if(!isset($_POST['invia'])){ ?>

<form method="post" action="#" id="formregistrazione">

<ul>
[*]<label for="username">Username</label>
<input type="text" name="username" id="username" />

[*]
<label for="password1">Password</label>
<input type="password" name="password1" id="password1" />

[*]
<label for="password2">Ripeti Password</label>
<input type="password" name="password2" id="password2" />

[*]
<label for="email">Email</label>
<input type="text" name="email" id="email" />

[/list]
<input type="submit" name="invia" id="registrati" value="Registrati" />
</form>

<?php } else {

// creazione di un codice di conferma
$codiceconferma = md5(uniqid(rand()));

// Valori del form

$username = mysql_real_escape_string($_POST['username']);
$password1 = mysql_real_escape_string($_POST['password1']);
$password2 = mysql_real_escape_string($_POST['password2']);
$email = mysql_real_escape_string($_POST['email']);

// controllo campi vuoti e password

if($username == "" || $email == ""){
echo "Devi riempire tutti i campi";
}elseif($password1 == "" || $password2 == ""){
echo "Devi riempire tutti i campi";
}elseif($password2 != $password1){
echo "Le password devono coincidere";
}else{

$recuperauseremail = mysql_query("SELECT id FROM utenti WHERE username='$username' OR email='$email'");
$contausermail = mysql_num_rows($recuperauseremail);

if($contausermail > 0){

echo "Nome utente o email giā disponibili";

} else {

// Invia dati alla tb utenti_temp

$inviautentitemp = mysql_query("INSERT INTO utenti_temp (codiceconferma, username, password, email) VALUES ('$codiceconferma', '$username', '$password2', '$email')");

if($inviautentitemp){

$to=$email;
$subject="Conferma la Registrazione";
$header="Da: Amministratore";
$message="Ecco il tuo codice di attivazione \r\n";
$message.="Clicca sul link per confermare la registrazione \r\n";
$message.="http://127.0.0.1/sito/register.php?passkey=$codiceconferma";

$sentmail=mail($to,$subject,$message,$header);


}

if($sentmail){

echo "Per completare la registrazione controlla la tua casella di posta elettronica e clicca sul link di attivazione.";

}else{

echo "Errore, link di attivazione non inviato.";

}

}
}

}

} else {

$passkey = $_GET['passkey'];

$sqlrecuperauser = "SELECT * FROM utenti_temp WHERE codiceconferma = '$passkey'";
$risultatouser = mysql_query($sqlrecuperauser);

if($risultatouser) {

$contauser = mysql_num_rows($risultatouser);

if($contauser == 1){

$rows = mysql_fetch_array($risultatouser);
$username = $rows['username'];
$email = $rows['email'];
$password = $rows ['password'];

$passwordcript = md5($password);

$sqlconfermauser = mysql_query("INSERT INTO utenti (username, password, email) VALUES ('$username', '$passwordcript', '$email')");

if ($sqlconfermauser) {

echo "Il tuo account č stato attivato con successo";
$sqleliminadati = mysql_query("DELETE FROM utenti_temp WHERE codiceconferma = '$passkey'");

} else {

echo "Errore!";

}

}

}

}

?>


</div>


</body>
</html>

qst č il file lo inserisco al posto di questo?:

$to=$email;
$subject="Conferma la Registrazione";
$header="Da: Amministratore";
$message="Ecco il tuo codice di attivazione \r\n";
$message.="Clicca sul link per confermare la registrazione \r\n";
$message.="http://127.0.0.1/sito/register.php?passkey=$codiceconferma";

$sentmail=mail($to,$subject,$message,$header);