Visualizzazione risultati 1 fino 6 di 6

Discussione: Mail con mail() in php

  1. #1
    Guest

    Unhappy Mail con mail() in php

    Ho cercato a lungo sul forum ma non ho mai trovato ciò che mi interessa: come attivare la funzione mail di altervista ( che a quanto ho capito non deve essere attivata in realtà, qua non è specificato ).
    Io ho tentato varie volte e, premesso che il resto del codice funziona, registrandosi non viene inviata nessuna mail, anche se essa viene salvata nel db insieme a tutti i dati relativi. Qualcuno ha qualche soluzione?
    Grazie in anticipo.

  2. #2
    Guest

    Smile

    Codice per l'invio della mail:

    Codice PHP:
    else //Invio MAIL di conferma
    {
    echo
    "\n ".$_POST['mail'];
    $a=$_POST['mail'];
    $oggetto="Registrazione a Calendar";

    $messaggio= " Segui il link per completare la registrazione :";
    $messaggio.= " <a href=\"www.fellowshipofmad.altervista.org/Calendario/testMail.php"; //
    $messaggio.= "?cod=".$cod."&user=".$_POST['username']." > link </a> ";

    $intestazioni= "From:fellowshipofmad@altervista.org";
    $intestazioni .= "Reply-To:fellowshipofmad@altervista.org";
    $intestazioni .= "X-Mailer: PHP/".phpversion();

    mail($a, $oggetto, $messaggio, $intestazioni);

    }
    }

  3. #3
    AdminTeclis non è connesso Utente
    Data registrazione
    29-12-2004
    Messaggi
    128

    Predefinito

    posta il codice completo...

  4. #4
    Guest

    Talking

    Codice PHP:
    <html>
    <head>

    <link rel="stylesheet" type="text/css" href="cssPrototype.css" />
    </head>
    <?php
    echo $_POST['username']." and ".$_POST['pw'];
    include
    'config.php';


    $tableUsername="SELECT * FROM user WHERE username like '{$_POST['username']}'";
    $ExistUser=mysql_query($tableUsername);

    if(
    mysql_num_rows($EsistUser)>0)
    echo
    "Username già esistente";

    else{

    include
    "randomString.php";

    $cod=randomString();
    $cod='pinguino';
    $pw = md5($_POST['pw']);

    echo
    $pw;

    $sql = "INSERT INTO `t_user` (`ID`, `username`, `mail`, `PW`,`controllo`) ";
    $sql .= "VALUES (NULL, '{$_POST['username']}', '{$_POST['mail']}', '{$pw}', '{$cod}');";

    if(
    mysql_query ($sql))echo 'ok';
    else echo
    " noWay ";

    $tableUsername = "SELECT * FROM t_user WHERE username = '{$_POST['username']}'";
    $t_user=mysql_query($tableUsername);
    $forID=mysql_fetch_array($t_user);

    if(
    mysql_num_rows($t_user)==0)echo "error!";

    else
    //Invio MAIL di conferma
    {
    echo
    "\n ".$_POST['mail'];
    $a=$_POST['mail'];
    $oggetto="Registrazione a Calendar";

    $messaggio= " Segui il link per completare la registrazione :";
    $messaggio.= " <a href=\"www.fellowshipofmad.altervista.org/Calendario/testMail.php"; //
    $messaggio.= "?cod=".$cod."&user=".$_POST['username']." > link </a> ";

    $intestazioni= "From:fellowshipofmad@altervista.org";
    $intestazioni .= "Reply-To:fellowshipofmad@altervista.org";
    $intestazioni .= "X-Mailer: PHP/".phpversion();

    mail($a, $oggetto, $messaggio, $intestazioni);

    }
    }
    ?>
    Ultima modifica di javascripter : 03-06-2013 alle ore 13.24.34

  5. #5
    AdminTeclis non è connesso Utente
    Data registrazione
    29-12-2004
    Messaggi
    128

    Predefinito

    scusa ma la variabile $_POST['mail'] da dove arriva??? hai provato a fare un echo di quella variabile?
    Poi se fosse che a prendi diretta, è SBAGLIATISSIMO! devi fare i controlli del caso, altrimenti se io scrivo seibrutto senza nulla, tu lo precessi come email...

  6. #6
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,061

    Predefinito

    Ogni campo dell'intestazione dovrebbe avere un
    Codice PHP:
    "\r\n"
    come specificato nella documentazione.
    Inoltre, se immetti dell'HTML, per poter essere parsato (sempre che il provider lo supporti), è necessario inserire le righe all'header:

    Codice PHP:
    // To send HTML mail, the Content-type header must be set
    $headers = 'MIME-Version: 1.0' . "\r\n";
    $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";

    Comunque, prova a vedere:

    -se il codice viene eseguito fino al mail()
    -che parametri passi alla funzione mail()
    -cosa ritorna la funzione mail()

    Se ancora tutto sembra funzionare correttamente, prova a guardare se le email arrivano, ma si trovano in spam o posta indesiderata.

    Ciao!

Tags for this Thread

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •