Purtroppo non funge
.
Sto cercando di utilizzare phpmailer con gmail
Ho provato sia con tls (porta 587) che con ssl (porta 465)
ottengo sempre:
SMTP -> ERROR: Failed to connect to server: Connection timed out (110)
<?
require_once('class.phpmailer.php');
include("class.smtp.php"); // optional, gets called from within class.phpmailer.php if not already loaded
$mail = new PHPMailer(true); // the true param means it will throw exceptions on errors, which we need to catch
$mail->IsSMTP(); // telling the class to use SMTP
try {
$mail->SMTPDebug = 2; // enables SMTP debug information (for testing)
$mail->SMTPAuth = true; // enable SMTP authentication
$mail->SMTPSecure = "ssl"; // sets the prefix to the servier
$mail->Host = "smtp.gmail.com"; // sets GMAIL as the SMTP server
$mail->Port = "465"; // set the SMTP port for the GMAIL server
$mail->Username = "mioaccount@gmail.com"; // GMAIL username
$mail->Password = "yourpassword"; // GMAIL password
$mail->AddAddress('test@tiscali.it', 'John Doe');
$mail->Subject = 'PHPMailer Test Subject via mail(), advanced';
$mail->MsgHTML("test");
$mail->Send();
echo "Message Sent OK\n";
} catch (phpmailerException $e) {
echo $e->errorMessage(); //Pretty error messages from PHPMailer
} catch (Exception $e) {
echo $e->getMessage(); //Boring error messages from anything else!
}
?>
2000 post e sono più vecchio di 4 anni...
grazie a tutti....
Come faccio ad impostare 2 indirizzi Sender "$mail->Sender"
Ho bisogno che i messaggi di mancato recapito vengano recapitati a 2 mailbox
Denghiù![]()
.
Ho in funzione la classe da un pò di tempo all'interno di una web application
e tutto funziona bene, finora (dopo circa 1000 @ inviate nell'arco di 2 mesi ) negli ultimi giorni
c'è un utente che continua a ricevere questo messaggio di errore dopo l'invio di email tramite la classe:
codice:Invalide address: Could not instantiate mail function
Ho verificato gli indirizzi @ da lui immessi, sono tutti corretti non capisco cosa gli dia fastidio![]()
.
Ciao,
uso senza problemi phpmailer da un po' di tempo, sto ora provando ad utilizzare la parte relativa all'SMTP poichè ho attivato l'IMAP per le mie caselle email.
In questo modo dovrei poter inviare tramite script le email e ritrovarmele poi (credo !!) nella cartella di posta inviata.
Le email vengono inviate regolarmente dallo script, ma non finiscono nella cartella di posta inviata, cosa che invece accade regolarmente quando le invio sia tramite webmail che tramite mozilla thunderbird.
Come può essere ?
Il mio futuro ?? Io lo conosco, è il PARTY !! (Party Man)
...e ricordati che prima o poi il po-chi gira (Il Maestro)
Mi aiutate a capire![]()
codice:Invalide address: Could not instantiate mail function
Grazie![]()
.
Stavo pensando che l'errore Invalide address io lo associo solo all'indirizzo @ non valido,
potrebbe essere che non riesce ad istanziare la classe per qualche altra ragione ?
E poi possibile che solo a quell'utente viene fuori questo errore ?![]()
.
Risolto !
in effetti si trattava di indirizzo @ assente.
L'email degli utenti vengono recuperati dal db dove questo utente era stato caricato erroneamente 2 volte di cui un record non riportava l'indirizzo email.
Grazie cmq.![]()
.
Spero che mtx_maurizio mi venga in soccorso;
Stò cercando di ottimizzare i controlli dal form, avevo incluso prima della INSERT questo controllo sulla @
Ma sembra non eseguire correttamente il suo compito, nel senso che se dopo il punto qualsiasi suffisso inserisco lo accetta ( es.: .xxx, .itt. commm etc )Codice PHP:
if (!eregi("^[a-z0-9._-]+@+[a-z0-9._-]+.+[a-z]{2,4}$", $mail_utente))
{
header("Location: ../messaggio.php?msg=errore email"); exit();
}
allora mi sono detto visto che sicuramente il controllo nella classe è perfetto perchè non controllare prima dell'insert utilizzando la stessa function di validazione?
Questa x intenderci
Codice PHP:
public static function ValidateAddress($address) {
if (function_exists('filter_var')) { //Introduced in PHP 5.2
if(filter_var($address, FILTER_VALIDATE_EMAIL) === FALSE) {
return false;
} else {
return true;
}
} else {
return preg_match('/^(?:[\w\!\#\$\%\&\'\*\+\-\/\=\?\^\`\{\|\}\~]+\.)*[\w\!\#\$\%\&\'\*\+\-\/\=\?\^\`\{\|\}\~]+@(?:(?:(?:[a-zA-Z0-9_](?:[a-zA-Z0-9_\-](?!\.)){0,61}[a-zA-Z0-9_-]?\.)+[a-zA-Z0-9_](?:[a-zA-Z0-9_\-](?!$)){0,61}[a-zA-Z0-9_]?)|(?:\[(?:(?:[01]?\d{1,2}|2[0-4]\d|25[0-5])\.){3}(?:[01]?\d{1,2}|2[0-4]\d|25[0-5])\]))$/', $address);
}
}
cosi ho incluso la classe nella mi apagina sql.php ed ho cambiato il controllo richiamando la function, cosi;
però non va e mi restituisce questo errore:Codice PHP:
if(!ValidateAddress($mail_utente))
{
header("Location: ../messaggio.php?msg=errore email"); exit();
}
Probabilmente sbaglio perchè non richiamo la funzione corettamente ?codice:Fatal error: Call to undefined function ValidateAddress() in C:\www\MIO_SITO\modules\sql.php on line 75
oppure sbaglio a provare cosi ?
![]()
.
Anche io noto problemi con caselle di posta @libero.it e @email.it
In pratica mi arrivano dopo molto tempo.
C'e' qualcosa che si puo' fare?
Se come smtp si utilizzasse gmail invece che l'indirizzo di un nostro server, sarebbe migliore come cosa?
Mai dire Mai